الفرق بين المراجعتين لصفحة: «Python/re/split»

من موسوعة حسوب
< Python‏ | re
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>re.split()‎</code> في بايثون‎}}</noinclude> تقسم الدالة السلسلة النصية عند كل مكا...'
 
سطر 31: سطر 31:


<syntaxhighlight lang="python3">
<syntaxhighlight lang="python3">
>>> re.split(r'[\W]+', 'Words, words, words.')
>>> import re
>>> re.split(r'\W+', 'Words, words, words.')
['Words', 'words', 'words', '']
['Words', 'words', 'words', '']
>>> re.split(r'([\W]+)', 'Words, words, words.')
>>> re.split(r'(\W+)', 'Words, words, words.')
['Words', ', ', 'words', ', ', 'words', '.', '']
['Words', ', ', 'words', ', ', 'words', '.', '']
>>> re.split(r'[\W]+', 'Words, words, words.', 1)
>>> re.split(r'\W+', 'Words, words, words.', 1)
['Words', 'words, words.']
['Words', 'words, words.']
>>> re.split('[a-f]+', '0a3B9', flags=re.IGNORECASE)
['0', '3', '9']
</syntaxhighlight>
</syntaxhighlight>



مراجعة 22:08، 1 يونيو 2018

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

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

re.split(pattern, string, maxsplit=0, flags=0)

المعاملات

pattern

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

string

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

maxsplit

العدد الأقصى من التقسيمات التي تجريها الدالة على السلسلة النصية. في حال كان العدد الأقصى من التقسيمات أقل من عدد حالات المطابقة فإنّ الدالة تعيد ما يبقى من السلسلة النصية ليكون العنصر الأخير في القائمة المعادة. يأخذ هذا المعامل القيمة الافتراضية 0.

flags

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

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

تقسم الدالة السلسلة النصية عند كل مكان تحدث فيه عملية مطابقة للنمط المعطى. إن استُخدمت أقواس التقاط القيمة ضمن النمط، فإنّ النصّ التابع لجميع المجموعات ضمن النمط سيُعاد كجزء من القائمة الناتجة.

أمثلة

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

>>> import re
>>> re.split(r'\W+', 'Words, words, words.')
['Words', 'words', 'words', '']
>>> re.split(r'(\W+)', 'Words, words, words.')
['Words', ', ', 'words', ', ', 'words', '.', '']
>>> re.split(r'\W+', 'Words, words, words.', 1)
['Words', 'words, words.']
>>> re.split('[a-f]+', '0a3B9', flags=re.IGNORECASE)
['0', '3', '9']

مصادر