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

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

introduction to regular expressions مقدمه ای بر عبارات منظم Regular Expressions
آموزش asp.net با c#

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 را پوشش می دهد. با ما همراه باشید.

درباره نویسنده

مطالب مرتبط

نظر بدهید

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

سوپروب close
خرید بک لینک