logo

وظيفة MySQL REGEXP_LIKE()

يتم استخدام وظيفة REGEXP_LIKE() في MySQL لمطابقة الأنماط. هو - هي يقارن ما إذا كانت السلاسل المعطاة تتطابق مع تعبير عادي أم لا . تقوم بإرجاع 1 إذا كانت السلاسل تتطابق مع التعبير العادي وترجع 0 إذا لم يتم العثور على تطابق.

بناء الجملة

فيما يلي بناء الجملة الأساسي لاستخدام هذه الوظيفة ماي إس كيو إل :

 REGEXP_LIKE (expression, pattern [, match_type]) 

شرح المعلمة

شرح معلمات الدالة REGEXP_LIKE() هي:

تعبير: إنها سلسلة إدخال نقوم بالبحث فيها عن مطابقة التعبير العادي.

نمط: إنه يمثل التعبير العادي الذي نختبر السلسلة من أجله.

نوع مباراة: إنها سلسلة تسمح لنا بتحسين التعبير العادي. يستخدم الأحرف المحتملة التالية لإجراء المطابقة.

    ج:وهو يمثل مطابقة حساسة لحالة الأحرف.أنا:وهو يمثل مطابقة غير حساسة لحالة الأحرف.م:وهو يمثل وضعًا متعدد الأسطر يتعرف على نهايات الأسطر داخل السلسلة. بشكل افتراضي، تطابق هذه الدالة إنهاء الأسطر في بداية السلسلة ونهايتها.ن:يتم استخدامه لتعديل . (نقطة) حرف لمطابقة نهايات السطر. افتراضيًا، سيتوقف عند نهاية السطر.في:وهو يمثل نهايات أسطر Unix فقط التي تتعرف فقط على حرف السطر الجديد بواسطة عوامل المطابقة .، ^، و$.

دعونا نفهم كيف يمكننا استخدام هذه الوظيفة في MySQL مع أمثلة مختلفة.

مثال

يشرح البيان التالي المثال الأساسي لوظيفة REGEXP_LIKE في MySQL.

 mysql> SELECT REGEXP_LIKE ('England or America', 'l.nd') AS Result; 

في هذا المثال، يمكن للتعبير العادي تحديد أي حرف بدلاً من النقطة. ولذلك، سوف نحصل على مباراة هنا. لذلك ترجع هذه الدالة الرقم 1 للإشارة إلى التطابق.

وظيفة MySQL regexp_like

العبارة أدناه هي مثال آخر حيث لا تتطابق سلسلة الإدخال مع التعبير العادي المحدد.

 mysql> SELECT REGEXP_LIKE ('MCA', 'BCA') AS Result; 

هنا هو الإخراج:

الصف مقابل العمود
وظيفة MySQL regexp_like

البيان أدناه هو مثال آخر حيث يبحث التعبير العادي المحدد ما إذا كانت السلسلة تنتهي بالأحرف المحددة أم لا:

 mysql> SELECT REGEXP_LIKE ('England Netherland Scotland', 'and$') AS Result; 

وهنا النتيجة:

وظيفة MySQL regexp_like

يمكننا توفير معلمة إضافية لتحسين التعبير العادي باستخدام وسيطات نوع المطابقة. انظر المثال أدناه حيث نحدد أ حساسية الموضوع و مطابقة غير حساسة لحالة الأحرف:

 mysql> SELECT REGEXP_LIKE ('India Indonesia', '^in', 'i') AS 'Case-Insensitive', REGEXP_LIKE ('India Indonesia', '^in', 'c') AS 'Case-Sensitive'; 

وهنا النتيجة:

وظيفة MySQL regexp_like