Python ရှိ Regular Expression များတွင် 'သို့မဟုတ်' အမိန့်
'|' အမိန့်သည်
[ ] အမိန့်နှင့် နှိုင်းယှဉ်ပါက
'သို့မဟုတ်' ၏ ပိုမိုအားကောင်းသော ရွေးချယ်မှုတစ်ခု ဖြစ်သည်။
ဤအမိန့်သည်
ရက်ဂျူးလားကို အပိုင်းများစွာသို့ ခွဲခြားခွင့်ပြုသည်။
ဤသို့ဖြင့် ရှာဖွေတွေ့ရှိသော အရာသည်
ရက်ဂျူးလား၏ တစ်ပိုင်းအောက်သို့ ကျရောက်နိုင်သည်၊ သို့မဟုတ်
အခြားတစ်ပိုင်းအောက်သို့ ကျရောက်နိုင်သည်။
ဥပမာများဖြင့် ကြည့်ရအောင်။
ဥပမာ
ဤဥပမာတွင် ရှာဖွေမှုပုံစံမှာ 'a' စာလုံး သုံးလုံး သို့မဟုတ် 'b' စာလုံး သုံးလုံး:
txt = 'aaa bbb abb'
res = re.sub('a{3}|b{3}', '!', txt)
print(res)
ကုဒ်လုပ်ဆောင်ချက်၏ ရလဒ်:
'! ! abb'
ဥပမာ
ဤဥပမာတွင် ရှာဖွေမှုပုံစံမှာ
'a' စာလုံး သုံးလုံး သို့မဟုတ်
'b' စာလုံး 1 မှ
အထက်:
txt = 'aaa bbb bbbb bbbbb axx'
res = re.sub('a{3}|b+', '!', txt)
print(res)
ကုဒ်လုပ်ဆောင်ချက်၏ ရလဒ်:
'! ! ! ! axx'
ဥပမာ
ဤဥပမာတွင် ရှာဖွေမှုပုံစံမှာ စာလုံးတစ်လုံး သို့မဟုတ် ထို့ထက်ပိုသော စာလုံးများ သို့မဟုတ် ဂဏန်းသုံးလုံး:
txt = 'a ab abc 1 12 123'
res = re.sub('[a-z]+|\d{3}', '!', txt)
print(res)
ကုဒ်လုပ်ဆောင်ချက်၏ ရလဒ်:
'! ! ! 1 12 !'
ဥပမာ
ဒေါင်လိုက်မျဉ်းသည် ရက်ဂျူးလားကို နှစ်ပိုင်းအဖြစ်သာမက မည်မျှပင်များသည့် အပိုင်းအရေအတွက်အထိ ခွဲခြားနိုင်သည်:
txt = 'aaa bbb ccc ddd'
res = re.sub('a+|b+|c+', '!', txt)
print(res)
ကုဒ်လုပ်ဆောင်ချက်၏ ရလဒ်:
'! ! ! ddd'
ဥပမာ
ဒေါင်လိုက်မျဉ်းသည် လုံးဝန်းကွင်းအတွင်း
တည်ရှိပါက၊ 'သို့မဟုတ်' သည်
ထိုကွင်းများအတွင်း၌သာ လုပ်ဆောင်သည်။
ဥပမာအနေနှင့် အောက်ပါပုံစံအတိုင်း စာတန်းများကို
ရှာကြည့်ကြစို့: အစတွင်
'a' သို့မဟုတ် 'b' တစ်ကြိမ် သို့မဟုတ် ထို့ထက်ပိုကြိမ် တည်ရှိပြီး၊ ထို့နောက်
'x' စာလုံး နှစ်လုံး တည်ရှိသည်:
txt = 'axx bxx bbxx exx'
res = re.sub('(a|b+)xx', '!', txt)
print(res)
ကုဒ်လုပ်ဆောင်ချက်၏ ရလဒ်:
'! ! ! exx'
လက်တွေ့လေ့ကျင့်ခန်းများ
စာတန်းတစ်ခု ရှိသည်:
txt = 'aeeea aeea aea axa axxa axxxa'
အောက်ပါပုံစံအတိုင်း စာတန်းများကို ရှာဖွေမည့် ရက်ဂျူးလားတစ်ခုကို ရေးပါ:
အနားများတွင် 'a' စာလုံးများ တည်ရှိပြီး၊
ကြားတွင် - 'e' စာလုံး မည်မျှပင်များသည့် အကြိမ်အရေအတွက်ဖြစ်စေ သို့မဟုတ်
'x' စာလုံး မည်မျှပင်များသည့် အကြိမ်အရေအတွက်ဖြစ်စေ တည်ရှိသည်။
စာတန်းတစ်ခု ရှိသည်:
txt = 'aeeea aeea aea axa axxa axxxa'
အောက်ပါပုံစံအတိုင်း စာတန်းများကို ရှာဖွေမည့် ရက်ဂျူးလားတစ်ခုကို ရေးပါ:
အနားများတွင် 'a' စာလုံးများ တည်ရှိပြီး၊
ကြားတွင် - 'e' စာလုံး နှစ်ကြိမ် သို့မဟုတ်
'x' စာလုံး မည်မျှပင်များသည့် အကြိမ်အရေအတွက်ဖြစ်စေ တည်ရှိသည်။