با سلام خدمت کاربران گرامی سایت پی وی لرن و کاربرانی که علاقمندان به دوره آموزشی پرل Perl. در جلسه گذشته آموزش کار با سینتکس پرل را به علاقمندان این دوره ارائه کردیم. در این جلسه آموزش کار با انواع داده در پرل را ارائه می نماییم.
پرل یک زبان typed language است بنابرین احتیاجی نیست که نوع داده های آن را مشخص نماییم.
به طور پیش فرض مترجم پرل بر اساس داده به کار رفته نوع داده را نیز تعیین می کند.
پرل سه نوع داده اساسی دارد: اسکالر ها، arrays های اسکالرها و hashes های اسکالرها.
در ادامه به معرفی این داده ها می پردازیم.
شماره نوع | نوع و توضیحات آن |
۱ | Scalar اسکالرها متغیرهای ساده هستند. آنها پیش از یک علامت دلار ($) قرار دارند. یک اسکالر می تواند یک شماره، یک رشته یا یک مرجع باشد. مرجع در واقع نشانی از یک متغیر است که در جلسات بعدی به تفضیل به آن ها خواهیم پرداخت. |
۲ | Arrays Arrays ها لیستی از اسکالرها هستند که می توان از طریق ایندکس های عددی به که با یک ۰ شروع می شوند به آن ها دسترسی داشت. این Arrays ها با یک علامت@ پردازش می شوند. |
۳ | Hashes Hashes ها جفتی از key/value ها هستند که که اجازه دسترسی به keys ها را به عنوان زیر مجموع به شما می دهند. Hashes ها با یک علامت % پردازش می شوند. |
پرل همه اعداد را به صورت عدد صحیح یا double-precision floating-point در نظر می گیرد.
Numeric literals ها هم به صورت عدد صحیح و هم به شکل double-precision floating-point می توانند جای بگیرند.
در جدول زیر به Numeric literals در هر دو فرمت اشاره شده است.
Value | Type |
۱۲۳۴ | Integer |
۱۰۰- | Negative integer |
۲۰۰۰ | Floating point |
۱۶٫۱۲E14 | Scientific notation |
۰xffff | Hexadecimal |
۰۵۷۷ | Octal |
رشته ها توالی کاراکتر هستند. آنها معمولا مقادیر الفبایی هستند که توسط نقل قول های تک (‘) یا دو (“) تعریف شده اند.
کار رشته ها بسیار شبیه نقل قول های پوسته یونیکس است که می توان در آن ها از هم از رشته های نقل قول تکی و هم دوگانه استفاده کرد.
رشته های دوگانه نقل قول اجازه استفاده از متغیرهای الحاقی را می دهند که در آن ها هیچ نقل قول تک رشته ای وجود ندارد.
هنگام استفاده از back slash کاراکترهای خاصی وجود دارند که برای نشان دادن خط جدید (\ n) یا تب (\ t) استفاده می شوند.
می توانید خطوط جدید یا هر کدام از دنباله های Escape را به طور مستقیم در رشته های نقل قول دوگانه خود قرار دهید.
Backslash | \\ |
نقل قول تنها | \’ |
هشدار یا زنگ | ”\ |
Backspace | a\ |
فرم خوراک | b\ |
خط جدید | f\ |
Carriage return | n\ |
زبانه افقی | r\ |
برگه عمودی | t\ |
فرمت اعداد Octal را می سازد | v\ |
برگه عمودی | ۰nn\ |
فرمت اعداد Hexideciamal را می سازد | xnn\ |
کاراکترها را کنترل می کند، X می تواند هر نوع کاراکتر باشد | cX\ |
کارکتر بعدی را مجبور به uppercase می کند. | u\ |
کارکتر بعدی را مجبور به lowercase می کند. | l\ |
تمام کاراکتر هایی که که در ذیل آن می آید را مجبور به uppercase می نماید | U\ |
تمام کاراکتر هایی که که در ذیل آن می آید را مجبور به lowercase می نماید | L\ |
تمام کاراکترهای غیر الفبایی و غیر عددی را مجبور به Backslash می کند | Q\ |
پایان \U, \L, or \Q | E\ |
حالا دوباره بررسی می کنیم که رشته ها چگونه با نقل قول های تکی و نقل قول های دوگانه رفتار می کند.
در این جا ما از رشته های فرّار که در بالا به آن ها اشاره کرده ایم استفاده می نماییم.
برای تعیین مقادیر رشته نیز از متغیر اسکالر بهره می بریم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | #!/usr/bin/perl # This is case of interpolation. $str = "Welcome to \ntutorialspoint.com!"; print "$str\n"; # This is case of non-interpolation. $str = 'Welcome to \ntutorialspoint.com!'; print "$str\n"; # Only W will become upper case. $str = "\uwelcome to tutorialspoint.com!"; print "$str\n"; # Whole line will become capital. $str = "\UWelcome to tutorialspoint.com!"; print "$str\n"; # A portion of line will become capital. $str = "Welcome to \Ututorialspoint\E.com!"; print "$str\n"; # Backsalash non alpha-numeric including spaces. $str = "\QWelcome to tutorialspoint's family"; print "$str\n"; |
این دستور نتیجه ای به شکل زیر خواهد داشت.
1 2 3 4 5 6 7 | Welcome to tutorialspoint.com! Welcome to \ntutorialspoint.com! Welcome to tutorialspoint.com! WELCOME TO TUTORIALSPOINT.COM! Welcome to TUTORIALSPOINT.com! Welcome\ to\ tutorialspoint\'s\ family |
در این جلسه آموزش کار با انواع داده در پرل را ارائه کردیم.
در جلسه بعد با آموزش متغیرها در کنار شما خواهیم بود.
با پی وی لرن همراه باشید.
ابوالفضل شعباني صاحبي
سلام یک منبع مناسب برای اسکریپت نویسی با زبان perl معرفی میکنید ممنونمیشم