در بخش‌های قبلی این سلسله مطالب آموزشی با ساختار % … LIKE  آشنا شدید. MySQL از نوعی الگوی دیگر عملیات تطبیق نیز پشتیبانی می‌کند که مبتنی بر عبارت‌های منظم (regular expressions) و عملگر Regexp است. اگر با PHP یا Perl آشنا باشید، در این صورت به سادگی این عملگر را درک می‌کنید، زیرا عملکرد تطبیق آن شبیه فرایند عبارت‌های منظم است.

در ادامه جدولی ارائه شده است که الگوهای مورد استفاده عملگر Regexp را عرضه می‌کند.

الگو What the pattern با چه چیز مطابقت دارد
^ آغاز رشته
$ پایان رشته
. هر کاراکتر منفرد
[…] هر کاراکتر که بین دو براکت قرار داشته باشد
[^…] هر کاراکتر که بین دو براکت نباشد
p1|p2|p3 جایگزینی یعنی با هر یک از الگوهای p1، p21 یا P3 مطابقت داشته باشد
* صفر یا چند عدد از عناصر قبلی
+ یک یا چند مورد از عناصر قبلی
{n} n عدد از عناصر قبلی
{m,n} mتا n مورد از عناصر قبلی

مثال

اینک بر اساس جدول فوق می‌توانید انواع مختلفی از کوئری‌های SQL طراحی کنید که الزامات شما را داشته باشند. در ادامه فهرستی از چند مورد برای درک بیشتر ارائه شده است.

فرض کنید جدولی به نام person_tbl داریم و این جدول فیلدی به نام name دارد. برای یافتن همه نام‌هایی که با st آغاز می‌شوند کوئری زیر را می‌زنیم:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

برای یافتن همه نام‌هایی که با ok پایان می‌یابند:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

برای یافتن همه نام‌هایی که شامل mar هستند:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

برای یافتن همه نام‌هایی که با حرف صدادار آغاز شده و با ok پایان می‌یابند کوئری زیر را می‌زنیم:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

اگر این مطلب برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

==

آیا این مطلب برای شما مفید بود؟

نظر شما چیست؟

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