الفرق بين المراجعتين لصفحة: «Python/regex/fullmatch»
طلا ملخص تعديل |
لا ملخص تعديل |
||
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة) | |||
سطر 38: | سطر 38: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* الدالة <code>[[Python/re/fullmatch|re.fullmatch()]]</code> | * الدالة <code>[[Python/re/fullmatch|re.fullmatch()]]</code>: تتحقّق الدالة ممّا إذا كانت السلسلة النصية بأكملها مطابقة للتعبير النمطي المعطى. | ||
* التابع <code>[[Python/regex/match|regex.match()]]</code>: يفحص هذا التابع بداية السلسلة النصية المعطاة بحثًا عن حالة تطابق مع التعبير النمطي المصرّف، ويعيد كائن التطابق المقابل. | |||
== مصادر == | == مصادر == | ||
* [https://docs.python.org/3/library/re.html#re.regex.search قسم Module Contents في صفحة Regular Expression Objects في توثيق بايثون الرسمي.] | * [https://docs.python.org/3/library/re.html#re.regex.search قسم Module Contents في صفحة Regular Expression Objects في توثيق بايثون الرسمي.] | ||
[[تصنيف:Python]] | [[تصنيف:Python]] | ||
[[تصنيف:Python Method]] | |||
[[تصنيف:Python Regular Expressions]] | [[تصنيف:Python Regular Expressions]] | ||
[[تصنيف:Python regex]] |
المراجعة الحالية بتاريخ 14:27، 18 يونيو 2018
يتحقّق هذا التابع من تطابق التعبير النمطي المصرّف مع السلسلة النصية المعطاة كاملة، ويعيد كائن التطابق المقابل.
البنية العامة
regex.fullmatch(string[, pos[, endpos]])
المعاملات
string
السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق.
pos
يحدّد هذا المعامل الاختياري الموقع الذي يبدأ منه التابع البحث في السلسلة النصية، ويأخذ القيمة الافتراضية 0
. إن تحديد موقع بدء عملية البحث ليس مطابقًا تمامًا لعملية تقطيع السلسلة النصية، فالمحرف '^'
يطابق في بداية السلسلة النصية وفي المواقع التي تأتي بعد محرف السطر الجديد، ولكن ليس بالضرورة في الموقع الذي يبدأ التابع منه عملية البحث.
endpos
يحدّد هذا المعامل الاختياري الموقع الذي ينتهي عنده التابع من البحث في السلسة النصية، وهذا يعني أنّ عملية البحث عن التطابقات ستجري على المحارف التي تقع ضمن النطاق الذي يبدأ بالموقع pos
وينتهي بالموقع endpos - 1
. إن كانت قيمة endpos
أقل من قيمة pos
فلن يكون هناك أي حالة تطابق.
القيمة المعادة
إن طابقت السلسلة النصية بأكملها التعبير النمطي المعطى، فسيعيد التابع كائن match
المقابل، وسيعيد القيمة None
إن لم تطابق السلسلة النصية التعبير النمطي المعطى، ويجب الانتباه إلى أنّ هذه الحالة تختلف عن الحالة التي تجد الدالة فيها تطابقًا طوله 0
.
ملاحظة: هذه الدالة متوفّرة في الإصدار 3.4 من اللغة وما بعده.
أمثلة
في المثال التالي لا توجد حالة تطابق مع السلسلة "dog"
لأنّ الحرف "o"
لم يرد في بداية الكلمة، ولا يوجد تطابق في مع السلسلة "ogre"
لأنّها لا تطابق بأكملها التعبير النمطي المعطى، ولكن تظهر حالة تطابق ضمن الحدود التي جرى تعيينها بتمرير القيم 1
و 3
إلى المعاملين pos
و endpos
على التوالي.
>>> pattern = re.compile("o[gh]")
>>> pattern.fullmatch("dog")
>>> pattern.fullmatch("ogre")
>>> pattern.fullmatch("doggie", 1, 3)
<_sre.SRE_Match object; span=(1, 3), match='og'>
انظر أيضًا
- الدالة
re.fullmatch()
: تتحقّق الدالة ممّا إذا كانت السلسلة النصية بأكملها مطابقة للتعبير النمطي المعطى. - التابع
regex.match()
: يفحص هذا التابع بداية السلسلة النصية المعطاة بحثًا عن حالة تطابق مع التعبير النمطي المصرّف، ويعيد كائن التطابق المقابل.