الدالة re.finditer()‎ في بايثون‎

من موسوعة حسوب
< Python‏ | re
مراجعة 22:23، 1 يونيو 2018 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>re.finditer()‎</code> في بايثون‎}}</noinclude> تعيد الدالة كائنًا قابلًا للتكرار it...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

تعيد الدالة كائنًا قابلًا للتكرار iterator ينتج عنه كائنات match لجميع حالات التطابق غير المتداخلة والناتجة من تطبيق التعبير النمطي المعطى على السلسلة النصية المعطاة.

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

re.finditer(pattern, string, flags=0)

المعاملات

pattern

التعبير النمطي المستخدم لإجراء عملية المطابقة.

string

السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق.

flags

الرايات المستخدمة لضبط عملية البحث. يأخذ هذا المعامل القيمة 0 كقيمة افتراضية. راجع قسم المعاملات في توثيق الدالة ()re.compile للمزيد من المعلومات.

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

تعيد الدالة كائنًا قابلًا للتكرار iterator ينتج عنه كائنات match لجميع حالات التطابق غير المتداخلة والناتجة من تطبيق التعبير النمطي المعطى على السلسلة النصية المعطاة. تُفحص السلسلة النصية من اليسار إلى اليمين، وتعاد حالات التطابق بحسب ترتيب وقوعها، وتضاف حالات التطابق الفارغة إلى القائمة أيضًا. راجع الملاحظة الخاصة بالدالة findall()‎.

أمثلة

يبين المثال التالي طريقة استخدام الدالة والنتائج المعادة منها:

>>> import re
>>> iterator = re.finditer(r'\d+', '12 drummers drumming, 11 ... 10 ...')
>>> iterator
<callable_iterator object at 0x7f8de757ef98>
>>> for match in iterator:
...     print(match.span())
...     
... 
(0, 2)
(22, 24)
(29, 31)

انظر أيضًا

مصادر