• 0

استخراج نص من سلسلة نصية باستخدام التعابير المنتظمة بلغة البايثون

كتابة دالة لاستخراج كل أرقام وطنية من النص  ملاحظة / ارقام وطنية تبدا  ب 056 ومكونة من 10 أرقام 

بداية الحل هيك يعني باستخدام الدالة

import re
text = input()

 كيف أجيب الكود ع برنامج الباي تشارم بلغة البايثون  بحيث لما أضغط ع Run  أدخل النص التالي Hello my Jawwal number is 0560000001

ليصبح الناتج  ["0560000001"]
المطلوب الكود نفسو ( فاهمة السؤال بس كل ما بكتب كود بطلع فيه خطأ)

1 شخص أعجب بهذا

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


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

بما أن الرقم الوطني له خصائصص يمكننا بناء التعبير المنتظم وفقها مثلا:

مثال للبحث عن نص ثابت و محدد:

expr = '056'

ثم وضعها هكذا:

import re 

text = 'Hello my Jawwal number is 056'

expr = '056'

match = re.findall(expr, text)

print(match)  # => ['056']

الآن حاولي تعديل الشيفرة، حيث سنعمل على جعل القسم الآخر من الرقم الوطني عبارة عن أرقام بعدد محدد:

[0-9]* # عدد لانهائي من الأرقام وممكن 0

[0-9]+ # عدد لانهائي من الأرقام  ولكن على الأقل رقم واحد


[0-9]X # X عدد لانهائي من الأرقام وعددهم 

[0-9]2 
[0-9]7
[0-9]X...

حاولي دمج القسم الثابت و يتبعه القسم المتغير والمحاولة.

علما أن:

[0-9] # ستعطي رقم واحد ضمن المجال

 

2 اشخاص أعجبوا بهذا

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


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 1
# فقط انسخ والصق هذا الكود
import re
def get_ID(string):
    
    s=re.split(' ',string)
    ID=[]
    for i in s:
        if(i.isnumeric()):
            if('056' == i[0:3] and len(i)==10):
                ID.append(i)

    return ID

text =input()
get_ID(text)

 

2 اشخاص أعجبوا بهذا

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


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0
بتاريخ On 28‏/5‏/2021 at 03:04 قال Ali Haidar Ahmad:

# فقط انسخ والصق هذا الكود
import re
def get_ID(string):
    
    s=re.split(' ',string)
    ID=[]
    for i in s:
        if(i.isnumeric()):
            if('056' == i[0:3] and len(i)==10):
                ID.append(i)

    return ID

text =input()
get_ID(text)

 

كيف حله بطريقة الinput ؟

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


رابط هذه المساهمة
شارك على الشبكات الإجتماعية

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

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

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


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

تسجيل الدخول

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


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