Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

بايثونالتعبير النمطي \B

تذكر: التعبير \B لا يطابق أول أو آخر أي سلسلة أحرف تحتوي على أحرف بين a-z أو A-Z أو أي رقم بين 0-9 أو الرمز _.

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

في المثال التالي سنضع الرمز \B في أول التعبير النمطي.
إنتبه يجب وضع الحرف r كما فعلنا قبل نص التعبير النمطي حتى يستطيع مفسر لغة بايثون أن يميز بين الرمز \B و الأحرف الموضوعة بضعه لأننا لا نريده أن يعامل الرمز \B كمعاملة الأحرف العادية.

المثال الأول

Test.py
# حتى نستطيع إستخدام الدوال الموجودة فيه re هنا قمنا بتضمين الموديول
import re
# هنا قمنا بتعريف النص الذي سنبحث فيه بعد قليل
txt = "Python is an easy language to learn"
# لكنها لا تنتهي بهما. في النهاية سترجع نتيجة البحث ككائن نوعه 'ea' ستبحث في النص عن كل كلمة تحتوي على الحرفين findall() الدالة
result = re.findall(r"\Bea", txt)
# غير فارغ, سيتم طباعة ما يحتويه كما هو يمثل كائن result بما أن
if result:
print(result)
else:
print("No match found!")
# حتى نستطيع إستخدام الدوال الموجودة فيه re هنا قمنا بتضمين الموديول import re # هنا قمنا بتعريف النص الذي سنبحث فيه بعد قليل txt = "Python is an easy language to learn" # لكنها لا تنتهي بهما. في النهاية سترجع نتيجة البحث ككائن نوعه 'ea' ستبحث في النص عن كل كلمة تحتوي على الحرفين findall() الدالة result = re.findall(r"\Bea", txt) # غير فارغ, سيتم طباعة ما يحتويه كما هو يمثل كائن result بما أن if result: print(result) else: print("No match found!")

سنحصل على النتيجة التالية عند تشغيل الملف Test.

['ea']


في المثال التالي سنضع الرمز \B في آخر التعبير النمطي.
إنتبه يجب وضع الحرف r كما فعلنا قبل نص التعبير النمطي حتى يستطيع مفسر لغة بايثون أن يميز بين الرمز \B و الأحرف الموضوعة بضعه لأننا لا نريده أن يعامل الرمز \B كمعاملة الأحرف العادية.

المثال الثاني

Test.py
# حتى نستطيع إستخدام الدوال الموجودة فيه re هنا قمنا بتضمين الموديول
import re
# هنا قمنا بتعريف النص الذي سنبحث فيه بعد قليل
txt = "Python is an easy language to learn"
# لكنها لا تنتهي به. في النهاية سترجع نتيجة البحث ككائن نوعه 'n' ستبحث في النص عن كل كلمة تحتوي على الحرف findall() الدالة
result = re.findall(r"n\B", txt)
# غير فارغ, سيتم طباعة ما يحتويه كما هو يمثل كائن result بما أن
if result:
print(result)
else:
print("No match found!")
# حتى نستطيع إستخدام الدوال الموجودة فيه re هنا قمنا بتضمين الموديول import re # هنا قمنا بتعريف النص الذي سنبحث فيه بعد قليل txt = "Python is an easy language to learn" # لكنها لا تنتهي به. في النهاية سترجع نتيجة البحث ككائن نوعه 'n' ستبحث في النص عن كل كلمة تحتوي على الحرف findall() الدالة result = re.findall(r"n\B", txt) # غير فارغ, سيتم طباعة ما يحتويه كما هو يمثل كائن result بما أن if result: print(result) else: print("No match found!")

سنحصل على النتيجة التالية عند تشغيل الملف Test.

['n']