• 0

كيف أستخرج الأرقام من سلسلة نصية في بايثون؟

لدي سلسلة نصية وأريد حذف جميع الحروف الموجودة فيها ما عدا الأرقام، فكيف أفعل ذلك في بايثون؟ هل يمكن فعل ذلك عن طريق التعابير النمطية؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

نعم، يوجد العديد من الطرق في لغة بايثون لفعل ذلك، ويمكنك استعمال التعابير النمطية باستخدام دالة sub من وحدة Re كما ذكرت وذلك عن طريق استخدام الرمز ^ مع نطاق الأرقام 0-9 كما في المثال التالي:

import re
re.sub("[^0-9]", "", "hichem313131hichem")
#'313131' #


أو يمكنك أيضا استخدام حلقة تكرار for مع الجملة الشرطية if في سطر واحد للتأكد من نوع كل حرف من السلسلة النصية ما إذا كان رقم أم لا كما في المثال التالي:
 

''.join(c for c in "hichem313131hichem" if c.isdigit())
#'313131'#

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن