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

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

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

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

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

درباره admin

دیدگاهتان را ثبت کنید

آدرس ایمیل شما منتشر نخواهد شدعلامتدارها لازمند *

*

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

شاید بپسندید

اتوبار پاکنژاد

اتوبار پاکنژاد اگر  دنبال اتوبار حرفه ای و منصفانه هستید ، پیشنهاد می کنیم یکبار باربری و ...

افزایش بازدید و بهبود رتبه الکسا

افزایش بازدید و بهبود رتبه الکسا افزایش بازدید و بهبود رتبه الکسا الکسا برای کاربران ...

پوشش حیاط خلوت

پوشش حیاط خلوت مجری انواع پوششهای نورگیر وسقف های سبک ونورگیرهای ساختمانی ،پوشش سقف حیاط ...