المفاهيم الأساسية لمتعلمي Regex الجدد
تعد التعبيرات العادية، التي يتم اختصارها غالبًا باسم regex أو regexp، أدوات فعالة لمعالجة النصوص ومطابقة الأنماط. يتم استخدامها للبحث عن النص وتحريره ومعالجته بناءً على أنماط محددة.
لماذا نتعلم Regex؟
يعد Regex أمرًا لا يقدر بثمن بالنسبة للمهام التي تتضمن نصًا، مثل التحقق من صحة البيانات والتحليل والتحويل. يمكن أن يساعدك تعلم التعبير العادي في التعامل بكفاءة مع البيانات النصية ومعالجتها بمختلف لغات البرمجة والبرمجة النصية.
المكونات الأساسية لـ Regex
يتم إنشاء أنماط Regex باستخدام الأحرف الحرفية والأحرف الوصفية. إليك نظرة عامة سريعة:
- الأحرف الحرفية: هذه تطابق نفسها. على سبيل المثال،
a
يطابق "a". - الأحرف الأولية: أحرف خاصة لها معاني محددة في التعبير العادي. تتضمن الأحرف الأولية الشائعة
.
,*
,+
,?
,[]
,{}
،()
، و|
.
الأحرف الأولية الشائعة ووظائفها
يعد فهم الأحرف الأولية أمرًا ضروريًا لاستخدام التعبير العادي بشكل فعال. فيما يلي بعض الأحرف الأولية شائعة الاستخدام:
.
- يطابق أي حرف واحد باستثناء السطر الجديد.*
- يطابق 0 أو أكثر من تكرار العنصر السابق.+
- يطابق تكرارًا واحدًا أو أكثر للعنصر السابق.?
- يطابق تكرار 0 أو 1 للعنصر السابق.[]
- يطابق أيًا من الأحرف الموجودة داخل الأقواس.{}
- يحدد عددًا محددًا من تكرارات العنصر السابق.()
- يقوم بتجميع الرموز المميزة معًا وإنشاء مجموعات التقاط.|
- يعمل كمشغل OR.
أنماط Regex الأساسية مع الأمثلة
دعنا نستكشف بعض أنماط التعبيرات العادية الأساسية لنرى كيفية عملها:
cat
يطابق السلسلة الدقيقة "cat".
.at
يطابق أي سلسلة تحتوي على حرف واحد متبوعًا بـ "at"، مثل "cat"، "bat"، "hat".
\d{3}
يتطابق تمامًا مع ثلاثة أرقام، مثل "123"، "456"، "789".
[a-z]
يطابق أي حرف صغير من "a" إلى "z".
(dog|cat)
يطابق إما "dog" أو "cat".
تطبيق Regex في البرمجة
يتم دعم Regex في العديد من لغات البرمجة. فيما يلي أمثلة لاستخدام regex في Python وJavaScript:
مثال بايثون
import re
# Search for 'cat' in a string
pattern = r'cat'
text = 'The cat sat on the mat.'
match = re.search(pattern, text)
if match:
print('Match found:', match.group())
else:
print('No match found')
مثال جافا سكريبت
// Search for 'cat' in a string
const pattern = /cat/;
const text = 'The cat sat on the mat.';
const match = text.match(pattern);
if (match) {
console.log('Match found:', match[0]);
} else {
console.log('No match found');
}
خاتمة
Regex هي أداة متعددة الاستخدامات وقوية لمعالجة النصوص ومطابقة الأنماط. من خلال فهم المكونات الأساسية والأنماط الشائعة، يمكن للمتعلمين الجدد البدء في استخدام التعبير العادي لحل مجموعة متنوعة من مهام معالجة النصوص. تدرب على أنماط مختلفة لتصبح بارعًا في استخدام التعبيرات العادية.