اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

ستجد في بايثون عدّة أساليب لفعل ذلك، فإذا كنت تستعمل الإصدار الثاني من بايثون فيمكنك استخدام دوال maketrans وtranslate وغيرها من وحدة string للحذف كالتالي:

>>> x='aaa12333bb445bb54b5b52'
>>> import string
>>> all=string.maketrans('','')
>>> nodigs=all.translate(all, string.digits)
>>> x.translate(all, nodigs)
'1233344554552'
>>>

أو يمكنك استخدام التعابير النمطية عن طريق استخدام الرمز \D لمطابقة جميع الأحرف غير رقمية وسوف نستبدلها بسلسلة نصية فارغة كما في المثال التالي:

>>> import re
>>> re.sub("\D", "", "aas30dsa20")
'3020'

أو يمكنك استخدام دالة filter مع lambda كما في المثال التالي (بالنسبة للإصدار 2 من بايثون):

>>> filter(lambda x: x.isdigit(), "aas30dsa20")
'3020'

أو عن طريق استخدام السطر التالي إذا كنت تستعمل الإصدار 3 من بايثون:

>>> ''.join(filter(lambda x: x.isdigit(), "aas30dsa20"))
'3020'

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...