دليل مرجعي JavaScript RegExp

RegExp

عبارات نمطية

يستخدم هذا النوع للبحث والتبديل بنمط في النص.

في JavaScript،RegExp هو نوع يمتلك خصائص ومساهمات.

النحو

/pattern/modifier(s);

مثال

let pattern = /codew3c/i;

جرب بنفسك

توضيح الأمثلة:

codew3c نمط البحث
/codew3c/ عبارات نمطية
/codew3c/i عبارات نمطية غير حساسة بالحروف الكبيرة والصغيرة

للحصول على معرفة حول العبارات النمطية، يرجى قراءة دليل RegExp JavaScript.

معدل

المعدلات تستخدم لتفيذ البحث غير الحساس بالحروف الكبيرة والصغيرة والكلي:

معدل وصف
g تفيذ التطابق الكلي (ابحث عن جميع التطابقات وليس فقط بعد التطابق الأول).
i تفيذ التطابق غير الحساس بالحروف الكبيرة والصغيرة.
d تفيذ التطابق للعنصر الفرعي.
m تفيذ التطابق عبر السطور.

البارénttheses

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

عبرة وصف
[abc] ابحث عن أي حرف بين البارénttheses.
[^abc] ابحث عن أي حرف غير موجود بين البارénttheses.
[0-9] ابحث عن أي عدد من 0 إلى 9.
[^0-9] البحث عن أي حرف ليس بين الأقواس (أي غير رقمي).
(x|y) البحث عن أي خيار معين.

حروف خاصة

حروف خاصة هي حروف لها معاني خاصة:

حروف خاصة وصف
. البحث عن حرف واحد، باستثناء الرموز النصية أو النهايات.
\w البحث عن حرف كلمة.
\W البحث عن حرف غير كلمة.
\d البحث عن رقم.
\D البحث عن حرف غير رقمي.
\s البحث عن حرف فارغ.
\S البحث عن حرف غير فارغ.
\b البحث عن تطابق في بداية أو نهاية الكلمة، حيث البداية مثل:\bHI، والنهاية مثل: HI\b.
\B البحث عن تطابق، لكن ليس في بداية أو نهاية الكلمة.
\0 البحث عن رمز NULL.
\n البحث عن مسار.
\f البحث عن صفحة.
\r البحث عن عودة.
\t البحث عن جدول.
\v البحث عن جدول رأسي.
\xxx البحث عن حرف المحدد بأرقام عشرية xxx.
\xdd البحث عن حرف المحدد بأرقام عشرية dd.
\udddd البحث عن حرف Unicode المحدد بأرقام عشرية xxxx.

الكميات

الكميات وصف
n+ التطابق مع أي نص يحتوي على واحد على الأقل من n.
n* التطابق مع أي نص يحتوي على صفر أو أكثر من n.
n? التطابق مع أي نص يحتوي على صفر أو واحد من n.
n{X} التطابق مع أي نص يحتوي على X من n.
n{X,Y} التطابق مع أي نص يحتوي على X إلى Y من n.
n{X,} التطابق مع أي نص يحتوي على سلسلة تحتوي على X من n.
n$ التطابق مع أي نص ينتهي به نص معين n.
^n التطابق مع أي نص يبدأ به نص معين n.
?=n التطابق مع أي نص يتبعه نص معين n.
?!n التطابق مع أي نص ليس له نص معين n يتبعه.

مواصفات RegExp

المواصفات وصف
constructor يعود الدالة التي تقوم بإنشاء prototype لـ RegExp.
global التحقق من إعداد مُعديل "g".
ignoreCase التحقق من إعداد مُعديل "i".
lastIndex تحديد بداية المؤشر على التطابق التالي.
multiline التحقق من إعداد مُعديل "m".
source يعود نص نموذج RegExp.

أساليب RegExp

الطريقة وصف
compile() مستبدل في إصدار 1.5. تجميع تعبير النصية.
exec() التحقق من وجود تطابق في النص. يعود التطابق الأول.
test() التحقق من وجود تطابق في النص. يعود صحيح أو خطأ.
toString() 返回正则表达式的字符串值。

patternattributes

pattern attributes

المعامل

المعامل pattern هو نص، يحدد نمط تعبير النمط أو تعبير نمط آخر.

المعامل attributes هو نص اختياري، يحتوي على الخصائص "g" و "i" و "m"، التي تُستخدم لتعيين التطابق الكامل، والتطابق مع التطابق الحرفي، والتطابق عبر الأسطر. قبل إصدار ECMAScript، لم يتم دعم خاصية m. pattern إذا كان الناتج تعبير نمط وليس نص، فإنه يجب تجاوز هذا المعامل.

الناتج

موضوع RegExp جديد، يمتلك النمط والمسارات المحددة. pattern هو تعبير نمط وليس نص، فإن بناء RegExp() سيستخدم نفس النمط والمسارات المحددة من RegExp لإنشاء موضوع RegExp جديد.

إذا لم يتم استخدام عمود التشغيل الجديد، وإذا تم استدعاء RegExp() كوظيفة، فإن سلوكه يشبه استدعاءه باستخدام عمود التشغيل الجديد، فقط عندما pattern هو تعبير نمط، فإنه يعود فقط pattern، وليس يتم إنشاء موضوع RegExp جديد.

ألقي

SyntaxError - إذا pattern ليس تعبير نمط قانوني، أو attributes يحتوي على حروف غير "g" و "i" و "m"، ألقي الاستثناء.

TypeError - إذا pattern هو موضوع RegExp، ولكن لا يتم تجاوزه attributes إذا كانت المعلمة، ألقي الاستثناء.

دعم المتصفحات

/regexp/ هو خاصية ECMAScript1 (ES1).

جميع المتصفحات تدعم بشكل كامل ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
يدعم يدعم يدعم يدعم يدعم يدعم

الطرق التي تدعم الأشياء باستخدام Object String التي تدعم تعبيرات النمط.

الطريقة وصف
search استرجاع القيم التي تتطابق مع النمط.
match إيجاد تطابق لعدة تعبيرات عشوائية.
replace استبدال النصوص التي تتطابق مع النمط باستخدام تعبير عشوائي.
split قسم النص إلى مجموعة من النصوص.