شنبه ۳ تیر ۱۳۹۶
  • :
  • :

مقدمه ای بر عبارات منظم Regular Expressions

مقدمه ای بر عبارات مرتب Regular Expressions


آموزش asp.net mvc

Regular Expressions

این مطلب سری اول سری آموزش ی عبارات منظم Regular Expressions و نقد ارزش یادگیری چنین تکنولوژی هایی است . این متن به صورت گام به گام ما را با عبارات مرتب آشنا می نماید ، می بینیم که عبارات منظم به هیچ وجه استرس ناک نیست، فقط چالش مطلوب اشتیاق برانگیز هستند .

خب، عبارات منظم چیست؟ جمله مرتب رشته ای از کاراکترهاست که برای پروگرام خاصی به نام regular expression engine معنا مفهوم دارد. این پروگرام به ما مجوز می دهد که با استفاده از زبان جهت پارس متن (text parsing) با آن رابطه برقرار کنیم. ما اگر بخواهیم تمام یا بخش ی از ورودی فرد را ارزیابی کنیم، از عبارات منظم استفاده می کنیم. اما نیازی نیست که حتمـا به عنوان یک پروگرام نویسی که از این عبارات مرتب مصرف می کنیم، بسیار زیاد پیشرفته باشیم. اما اگر چه دانستن نحوه نگارش آن ها ما را قادر می سازد که به طور کارامدی با این engine رابطه برقرار کنیم. حال ببینیم که در چه موارد ی از عبارات منظم استفاده می کنیم.
Regular Expressions

چه زمانی که می خواهیم دیتابیس طراحی کنیم، چه موتور جستجو، یا اینکه تنها بخواهیم داده های ورودی فرد را نقد کنیم، عبارات منظم در تمام این موارد در دسترس ماست می توانیم از آن مصرف کنیم.(با فرض اینکه محیط نام آن به درستی در برنامـه نوشته شده باشد). عبارات مرتب را می توان به عنوان یک سری قوانین برای نوع متنی که ما می خواهیم، در نظر گرفت. به عنوان مثال می توانیم با مصرف از engine متن هایی را پیدا کنیم که حاوی حروف کوچک اعداد می باشند . یا حتی می توانیم بخش خاصی از یک متن را در آن جستجو کنیم، به شرط اینکه بعد از کاراکتر خاصی باشد یا حاوی معیار مخصوص ای باشد. ویرایشگرهای متن مانند IDE ما هم می بایست از عبارات منظم مصرف نمایند. با عبارات مرتب امکانات بی شماری در اختیار ماست فقط محدودیت ما خلاقیت است!! در واقع ، عبارات منظم جهت زبان های برنامـه نویسی مهم بسیار زیاد حیاتی و مهم هستند هر کتابخانه ای را به آن اختصاص داده اند. برخي از این زبان ها Ruby، Java، .Net، Scala، JavaScript، C++ اما Perl هستند . Engineای که ما در این سری روش ی با آن کار می کنیم، .Net Framework است ، البته اگر چه بسياري از syntaxها قابلیت جا به جایی بین زبان های مختلف را دارند. ما به دنبال نحوه نگارشی هستیم که بتوانیم جمله منظم خودمان را ایجاد کنیم، پس نبرخي به API پیشنهاد شده فریم ورک نگاهي می اندازیم. پس می توانیم هر نوع عملیاتی جهت پیدا کردن متن موردنظر انجام دهیم.

کار را با نبرخي به آسان ترین مورد از جمله مرتب که در کد زیر مشاهده می بکنید ، شروع می کنیم.

stringexpression = @”test expression”;

مد نظر داشته باشید که علامت @ را قبل از اولین کوتیشن ” قرار دادیم. در مطلب بعدی در این مورد شرح خواهیم داد، اما هم اکنون بیایید این را به یک عادت آزمایش خوب تبدیل کنیم که در هر جمله منظمی که می نویسیم به همین شکل عمل کنیم.

متن داخـل رشته ما در این مثال از موتور می خواهد که کلمه “test” را جستجو نماید که بعد از فاصله با کلمه “expression” ادامه پیدا کرده است. پس مجوز دهید که متنی برای پارس کردن در برنامـه فراهم کنیم.

string sampleText = “This is my first test expression.”;

در اینجا، موتور جستجو چک می نماید که آیا test نوشته شده در متغیر expression با متن نوشته شده در متغیر sampleText مطابقت داشته باشد. چنانچه این درخواست را از موتور داشته باشیم، به ما خواهد گفت که متن موردنظر پیدا شد. همان گونه که می دانید، متن داخـل جمله مرتب می بایست دقیقا با رشته ای که حاوی این متن است می خواهیم آن را نقد کنیم یکی باشد. شاید در نگاه اول این کار بسیار زیاد قدرتمند نباشد، زیرا در این کار ازشیوه های پیشرفته تر و بهتری استفاده نکردیم.

به عنوان مثال چنانچه متغیر sampleText را به این صورت تغییر دهیم چه اتفاقی می افتد؟

stringsampleText = “This is my first Test EXPression”;

نتیجه موتور به این صورت خواهد بود: متن موردنظر یافت نشد!! زیرا این متن می بایست دقیقا با متن موردنظر جستجو یکسان باشد.

قسمت بعدی خصوصیات ی پیشرفته تر عبارات منظم API پیشنهاد شده بوسیله .Net Framework را پوشش می دهد. با ما همراه باشید.




پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

خرید vps خرید vps ارزان خرید سرور مجازی خرید سرور مجازی ارزان خرید وی پی اس خرید وی پی اس ارزان خرید فیلترشکن خرید vpn خرید vpn ارزان خرید vpn خرید vpn
سوپروب close
خرید بک لینک