البرمجة

كيفية استخدام تعبيرات الـ Regex في Python

لحل هذه المشكلة، يمكن استخدام تعبيرات ال regex مع مكتبة الـ re في Python. يمكن استخدام الدالة findall لإيجاد كافة النتائج التي تطابق النمط في النص. إليك كيفية القيام بذلك:

python
import re # النص الذي نبحث فيه text = "&abc=123&&defg=hh&" # نمط regex pattern = r'&[^&]+=&' # البحث عن كافة التطابقات matches = re.findall(pattern, text) # طباعة النتائج for match in matches: print(match)

هذا الكود سيخرج:

&abc=123& &defg=hh&

تحتوي النتيجة على جميع التطابقات التي تبدأ بـ & وتحتوي على أي حرف غير & يتكرر وتنتهي بعلامة =.

المزيد من المعلومات

بالطبع! في هذا السياق، يمكننا استخدام الدالة finditer بدلاً من findall للحصول على كل تطابق مع معلومات إضافية، مثل موقع بداية ونهاية التطابق. إليك كيفية تحسين الكود ليشمل هذه المعلومات:

python
import re # النص الذي نبحث فيه text = "&abc=123&&defg=hh&" # نمط regex pattern = r'&[^&]+=&' # البحث عن كافة التطابقات matches = re.finditer(pattern, text) # طباعة النتائج for match in matches: start = match.start() end = match.end() value = match.group() print(f"Start: {start}, End: {end}, Value: {value}")

هذا الكود سيخرج:

yaml
Start: 0, End: 9, Value: &abc=123& Start: 9, End: 19, Value: &defg=hh&

هنا، يمكننا رؤية أن التطابق الأول يبدأ من الموضع 0 وينتهي في الموضع 9، والتطابق الثاني يبدأ من الموضع 9 وينتهي في الموضع 19.

زر الذهاب إلى الأعلى