الدالة str.title()‎ في بايثون

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

تحوّل الدالة‎ أوائل الكلمات في السلسلة النصية إلى أحرف كبيرة Title Case.

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

تعيد الدالة نسخة من السلسلة النصية تكون فيها أوائل الكلمات ذات أحرف كبيرة.

أمثلة

يوضح المثال التالي النتيجة المعادة من تطبيق الدالة على سلسلة نصية:

>>> 'Hello world'.title()
'Hello World'

توضيح

تستخدم الدالة خوارزمية بسيطة لا تعتمد على أي لغة، حيث تعرّف الكلمة على أنّها مجموعة من الحروف المتتابعة. هذا التعريف صالح في معظم السياقات، ولكن في هذا التعريف تشكّل الفاصلة العليا في الكلمات المختصرة وفي صيغة التملك حدودًا للكلمات، وقد يتسبب ذلك في نتائج غير مرغوب بها:

>>> "they're bill's friends from the UK".title()
"They'Re Bill'S Friends From The Uk"

يمكن تجاوز هذه المشكلة باستخدام التعبيرات النمطية Regular Expressions:

>>> import re
>>> def titlecase(s):
...     return re.sub(r"[A-Za-z]+('[A-Za-z]+)?",
...                   lambda mo: mo.group(0)[0].upper() +
...                              mo.group(0)[1:].lower(),
...                   s)
...
>>> titlecase("they're bill's friends.")
"They're Bill's Friends."

انظر أيضًا

مصادر