شرح RegExp في JavaScript: دليلك لفهم التعبيرات النمطية بسهولة
ما هو RegExp في JavaScript؟
RegExp أو التعبيرات النمطية هي طريقة للبحث والتطابق داخل النصوص. تُستخدم في JavaScript للتحقق من شكل مدخلات المستخدم، البحث في النصوص، أو حتى تعديل محتوى النص.
التعبير النمطي عبارة عن نمط معين تكتبه وتستخدمه لمقارنة جزء معين من النص.
كتابة تعبير نمطي بسيط
أبسط شكل للتعبير النمطي هو البحث عن كلمة أو مجموعة أحرف داخل نص. يتم كتابته بين شرطتين مائلتين:
let result = /abc/.test("abcdef");
console.log(result); // true
في هذا المثال، نتحقق مما إذا كانت الكلمة "abc" موجودة داخل السلسلة "abcdef".
شرح الرموز الأكثر استخدامًا في RegExp
فيما يلي جدول يوضح الرموز الأساسية المستخدمة داخل RegExp:
| الرمز | المعنى |
|---|---|
| . | يمثل أي حرف ما عدا السطر الجديد |
| * | تكرار العنصر السابق 0 أو أكثر |
| + | تكرار العنصر السابق 1 أو أكثر |
| ? | العنصر السابق اختياري |
| ^ | بداية السطر |
| $ | نهاية السطر |
مثال عملي: التحقق من البريد الإلكتروني
أحد أشهر استخدامات RegExp هو التحقق من صحة البريد الإلكتروني. المثال التالي يُظهر تعبير نمطي يتحقق من صحة الإيميل:
let emailRegex = /^[\w.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
let test = emailRegex.test("example@email.com");
console.log(test); // true
شرح التعبير:
^[\w.-]+تعني: ابدأ بأي حروف أو أرقام أو نقاط أو شرطات.@وجود علامة @ ضروري.[a-zA-Z0-9.-]+النطاق (domain) يجب أن يحتوي على حروف أو أرقام أو نقاط.\.[a-zA-Z]{2,}$نهاية الإيميل تحتوي على نقطة تليها 2 أو أكثر من الحروف.
استخدام RegExp مع الدالة replace()
يمكنك استخدام RegExp لتبديل الكلمات داخل النصوص. على سبيل المثال:
let text = "أنا أحب البرمجة";
let newText = text.replace(/البرمجة/, "JavaScript");
console.log(newText); // "أنا أحب JavaScript"
هذا المثال يستبدل الكلمة "البرمجة" بـ "JavaScript" باستخدام RegExp.
نصائح لتعلم RegExp بسهولة
- ابدأ بأمثلة بسيطة وتدرّج في التعقيد.
- استخدم مواقع للتجريب مثل: regex101.com
- لا تحفظ الرموز، بل افهم كيف تعمل وطريقة تركيبها.
خاتمة
تُعتبر RegExp من الأدوات القوية في JavaScript، وتوفر لك إمكانية التحقق والبحث والتعديل داخل النصوص بكفاءة. ومع الوقت والممارسة، ستجد أنك تستخدمها بشكل طبيعي ضمن مشاريعك اليومية.