الفرق بين المراجعتين لصفحة: «Python/re/split»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>re.split()</code> في بايثون}}</noinclude> تقسم الدالة السلسلة النصية عند كل مكا...' |
|||
سطر 31: | سطر 31: | ||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
>>> re.split(r' | >>> import re | ||
>>> re.split(r'\W+', 'Words, words, words.') | |||
['Words', 'words', 'words', ''] | ['Words', 'words', 'words', ''] | ||
>>> re.split(r'( | >>> re.split(r'(\W+)', 'Words, words, words.') | ||
['Words', ', ', 'words', ', ', 'words', '.', ''] | ['Words', ', ', 'words', ', ', 'words', '.', ''] | ||
>>> re.split(r' | >>> 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']