آموزش regular expressios – گروه ها و lookaround

سلام به همه ی دوستان گرامی , من یه مدت رفته بودم دوره ی آموزشی سربازی حالا بعد از دو سه هفته بهم مرخصی دادن و اومدم تا برای عزیزان پست بزارم 😀 در این اموزش قصد داریم به ادامه ی آموزش مباحث regular expressions (عبارات با قاعده) بپردازیم. اگه نمیدونید عبارات با قاعده چی هستن و چه بدردی میخورن میتونید لیست آموزش های regex (regular expressions) رو از اینجا(کلیک کنید) ببینید و بخونید.

خب دیگه از حرف های اظافه میگذریم و به سراغ اموزش میریم. در اینجا به بررسی گروه ها (groups) و دید به اطراف (lookaround) در Regex میپردازیم. در ابتدا نیاز هست که یه سریع تعریف یا توضیحات راجب این مباحث بدم:

گروه ها یا groups : گروه ها (groups) با استفاده از علامت () ایجاد میشن , هر دستوری که بین ( و ) قرار بگیره به عنوان یک گروه در نظر گرفته میشه. شما وقتی که یک گروه ایجاد میکنید بعدا میتونید در دستورات بعدی به چیزی که با این گروه تطبیق داده شده اشاره کنید ( محتوای تطبیق شده با گروه رو بررسی کنید) که به این کار  lookaround میگن.

دید به اطراف یا lookaround :شما بعد از اینکه یه گروه ایجاد کردید با استفاده از یه علامت دلار یا $ و یه عدد به همراه اون میتونید به محتوای تطبیق داده شده با گروه اشاره کنید , دوستان عزیز دقت کنید که در برخی زبان های برنامه نویسی مثل جاوا اسکریپت (javascript) به جای علامت دلار از علامت بک اسلش یا  \ استفاده میشه (دقت کنید اسلش یا / نیست بلکه بک اسلش هست که با \ نشونش میدن)

حالا با توجه به توضیحاتی که دادم به مثال زیر دقت کنید:

در دستورات بالا ابتدا حرف s رو درون پرانتز قرار دادیم و یه گروه ایجاد کردیم که با حرف s تطبیق میکنه. بعدش بیرون از پرانتز +d\ قرار دادیم که با تکرار اعداد از ۰ تا ۹ تطبیق میکنه و در اخر نیز ۱\ استفاده کردیم که به محتوای تطبیق شده ی پرانتز اول ( که همون تطبیق با s هست) اشاره میکنه 😀 پیش نمایش رو میتونید از اینجا ببینید (کلیک کنید) دقت کنید هر متنی که عدد بین دوتا s باشه تطبیق داده میشه.

به عنوان یه مثال پیچیده تر میتونید اینجا رو ببینید (کلیک کنید) , اگه خواستید به چندتا گروه متفاوت اشاره کنید باید با توجه به ترتیب گروه های ایجاد شده از اعداد  به همراه \ یا $ (با توجه به زبان برنامه نویسی) استفاده کنید.

دوستان عزیز امیدوارم از این اموزش لذت کافی برده باشید. کسانی که سوال یا مشکلی دارن از بخش نظرات پایین همین پست مطرح کنند تا پاسخ بدم. موفق باشید.

به اشتراک بگذارید:Email this to someoneShare on FacebookTweet about this on TwitterShare on Google+Digg thisShare on LinkedInPin on PinterestShare on StumbleUponFlattr the authorShare on RedditBuffer this pageShare on TumblrPrint this pageShare on YummlyShare on VK
  1. MorTaZa7khat

    نقل قول: (دقت کنید هر متنی که عدد بین دوتا s باشه تطبیق داده میشه.)
    هر متنی نه بلکه هر عددی!

می‌خواهید دیدگاهتان را بیان کنید؟