عبارات باقاعده (Regex) برای متن

عبارات باقاعده: ابزار قدرتمند الگویابی متن — استخراج ایمیل، شماره، تاریخ و لینک با ماژول re پایتون

Regex چیست؟

عبارت باقاعده (Regular Expression) زبان کوچکی برای توصیف الگوهای متنی: «هر متنی که با @ تمام می‌شود» یا «هر عدد ۱۱ رقمی که با ۰۹ شروع می‌شود». ابزار قدیمی اما هنوز یکی از قدرتمندترین ابزارهای NLP!

الفبای Regex

نمادمعنامثال
.هر کاراکتر«م.d» ← «مید»، «مدد»
\dرقم\d\d ← «۴۲»
\wحرف/رقمکلمات
\sفاصله—
*صفر یا بیشتر«اب*» ← «ا»، «اب»، «ابب»
+یک یا بیشتر«اب+» ← «اب»، «ابب»
?اختیاری (صفر/یک)«رنگ?ها» ← «رنگ»، «رنگها»
{n,m}تعداد دقیق\d{11} ← شماره موبایل!
[...]یکی از این‌ها[۰-۹123] ← رقم فارسی یا انگلیسی
^ و $شروع و پایان^«از» ← شروع با «از»

مثال‌های کاربردی

ایمیل:    [\w.]+@[\w.]+\.\w+
موبایل:   ۰?۹[۰-۹]{9}
تاریخ:    \d{4}/\d{2}/\d{2}
لینک:     https?://[\w./]+

توابع ماژول re

Regex در NLP کجا استفاده می‌شود؟

نکته: برای الگوهای ثابت (ایمیل، تاریخ)، Regex عالی است؛ اما برای الگوهای معنایی («نام افراد»)، به NER (مبحث بعدی) نیاز دارید. Regex الگو می‌بیند، NER معنا!

جمع‌بندی

این مبحث بخشی از دوره آموزش کامل پردازش زبان طبیعی (NLP) است.

ابزارهای مرتبط