سلام. در این تاپیک آموزش re یا regular expressions یا regex قرار خواهد گرفت.
به هیچ عنوان از منبع فارسی زبانی استفاده نشده است. منابع استفاده شده متعاقبا به سمع و نظر کاربران خواهد رسید.
با تشکر از C4T عزیز
هماهنگ شده با Maziar عزیز
قسمت اول :
re چیست ؟ چرا باید از آن استفاده کنیم ؟ چگونه کار می کند ؟
RE مخفف Regular Expressions هست که در زبان فارسی معادل عبارات با قاعده برای آن در نظر گرفته شده است. من هم در این کتابچه ی آموزشی از همین نام استفاده می کنم.

به همین دلیل اگر می شد برای اطلاعات مورد نیاز خود یک الگو تعریف کنیم و از رایانه بخواهیم؛ داده هایی که با این الگو یکسان هستند را استخراج کن خیلی خوب می شد. این همان کاری است که عبارات با قاعده برای آن به وجود آمده اند.
در ادامه به نحوه ی کار عبارات با قاعده می پردازم.
در پایتون، از نسخه ی 2.1 به بعد عبارات با قاعده اضافه شدند. از آنجا که عبارات با قاعده همیشه مانند مثال های ذکر شده ساده نیستند و گاهی بسیار پیچیده می شوند به طوری که شرکت های بزرگ افرادی را فقط برای انجام این کار استخدام می کنند؛ پایتون برای اینکه این الگوها را سریعتر پردازش کند از یک موتور استفاده می کند که خود در C نوشته شده است. این امر باعث افزایش سرعت پایتون در اجرای عبارات با قاعده می شود.
پس در واقع الگوهایی که توسط ما طراحی می شود، به یک موتور که به زبان C نوشته شده است ارسال می شود و سپس آن موتور با سرعت بالا الگوی ما را پردازش کرده و خروجی را برمی گرداند.
تئوری استفاده از عبارات با قاعده
قبل از اینکه وارد کد نویسی شویم دوست دارم کمی توضیح درباره ی کلیت کاری که انجام می دهیم بدهم که بدانید در هر مرحله چه کاری انجام می شود.
در قدم اول باید بدانید که ما به یک داده از جنس رشته نیازمند هستیم تا پردازش های خود را انجام دهیم. این داده می توانید سورس کد یک وبسایت باشد و یا قسمتی از متن یک کتاب.
بعد از اینکه داده های ما حاضر بود باید نتایج مطلوب را مشخص کنیم و برای آن الگو یا الگوهایی را طراحی کنیم. به عنوان مثال می خواهیم همه ی کلماتی را که دارای پنج کاراکتر هستند از متن زیر استخراج کنیم:
"It seems that every day I meet a small businessperson who has
never experienced social media firsthand. They don't understand
what social media can do, how it works or where they should start.”
همه ی کلماتی که پنج کاراکتری هستند را استخراج کن.(لطفا)
این که این الگو چگونه به زبان عبارات با قاعده بیان می شود را در مباحث بعدی می آموزید.
بعد از اینکه الگوی مناسب را به پایتون دادیم، پایتون آن را به موتوری که برای این کار در نظر گرفته ارسال می کند و سپس موتور شروع به پردازش اطلاعات می کند.
در نهایت خروجی حاصل شده برگردانده می شود.
برچسب:
نویسنده: محمد رضا جوادیان