الفرق بين المراجعتين ل"Python/match/expand"

من موسوعة حسوب
< Python‏ | match
اذهب إلى التنقل اذهب إلى البحث
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:التابع <code>match.expand()‎</code> في بايثون}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:التابع <code>match.expand()‎</code> في بايثون}}</noinclude>
 
 
يجري هذا التابع عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية.
 
يجري هذا التابع عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية.
  
سطر 41: سطر 40:
 
== انظر أيضًا ==
 
== انظر أيضًا ==
  
* التابع [[Python/regex/sub|regex.sub()‎]] في بايثون.
+
* التابع [[Python/regex/sub|<code>regex.sub()‎</code>]]: يبدل التابع حالات التطابق غير المتداخلة في أقصى اليسار -والناتجة عن تطبيق التعبير النمطي المصرّف على السلسلة النصية المعطاة- بسلسلة نصية أو بالقيمة المعادة من دالة.
  
 
== مصادر ==
 
== مصادر ==
سطر 48: سطر 47:
  
 
[[تصنيف:Python]]
 
[[تصنيف:Python]]
 +
[[تصنيف:Python Method]]
 
[[تصنيف:Python Regular Expressions]]
 
[[تصنيف:Python Regular Expressions]]
 +
[[تصنيف:Python match]]

المراجعة الحالية بتاريخ 14:55، 18 يونيو 2018

يجري هذا التابع عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية.

البنية العامة

match.expand(template)

المعاملات

template

سلسلة نصية تتضمّن تسلسلات مسبوقة بالخط المائل العكسي تمثّل القالب الذي سيستخدمه التابع لإجراء عمليات الاستبدال.

القيمة المعادة

يعيد التابع السلسلة النصية الناتجة عن إجراء عمليات عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية، وبنفس طريقة عمل التابع regex.sub()‎. إذ تُحوّل تسلسلات التهريب مثل ‎\n إلى المحارف المقابلة، وتحوّل الإشارات الخلفية الرقمية مثل (‎\2، \1) والإشارات الخلفية المسمّاة مثل (‎\g<1> ،\g<name>‎) بالمحتوى المقابل للمجموعة.

ملاحظة: في الإصدار 3.5 من اللغة يستبدل التابع المجموعات غير المتطابقة بسلاسل نصية فارغة.

أمثلة

يبين المثال التالي النتائج المعادة من هذا التابع:

>>> import re
>>> str = "Hsoub Wiki"
>>> pattern = r'(?P<name>\w+)\s+(\w+)'
>>> match = re.search(pattern, str)
>>> if match:
...     match.expand(r'\g<name>')
... 
'Hsoub'
>>> if match:
...     match.expand(r'\2')
... 
'Wiki'

انظر أيضًا

  • التابع regex.sub()‎: يبدل التابع حالات التطابق غير المتداخلة في أقصى اليسار -والناتجة عن تطبيق التعبير النمطي المصرّف على السلسلة النصية المعطاة- بسلسلة نصية أو بالقيمة المعادة من دالة.

مصادر