Python ရှိ ရည်ညွှန်းဖော်ပြချက်များ နှင့် မိတ်ဆက်
ရည်ညွှန်းဖော်ပြချက်များသည် ရှုပ်ထွေးသော ရှာဖွေခြင်းနှင့် အစားထိုးခြင်း (သို့မဟုတ် ရှာဖွေခြင်းတစ်ခုတည်း) အတွက် ညွှန်ကြားချက်များ ဖြစ်ပါသည်။ ၎င်းတို့သည် အလွန်စိတ်ဝင်စားဖွယ်ရာများ ပြုလုပ်ရန် ခွင့်ပြုသော်လည်း၊ ကံမကောင်းစွာပင်၊ တတ်မြောက်ရန် အတော်လေး ခက်ခဲပါသည်။
Python တွင် ရည်ညွှန်းဖော်ပြချက်များနှင့် အလုပ်စတင်ရန်၊ အထူးမော်ဂျူး re ကို တင်သွင်းရန် လိုအပ်ပါသည်။
import re
မော်ဂျူး re တွင် ရည်ညွှန်းဖော်ပြချက်များ နှင့် အလုပ်လုပ်ရန် ရည်ရွယ်ထားသော နည်းလမ်းများ ပါဝင်ပါသည်။ ရည်ညွှန်းဖော်ပြချက်တစ်ခုသည် ညွှန်ကြားချက်များ၏ စုစည်းမှုတစ်ခု ဖြစ်ပြီး သင်္ကေတနှစ်မျိုးဖြင့် ဖွဲ့စည်းထားသည်။ ကိုယ်တိုင်ကို ကိုယ်တိုင် ကိုယ်စားပြုသော သင်္ကေတများနှင့် အထူးသင်္ကေတများ ဟုခေါ်သော ညွှန်ကြားချက်-သင်္ကေတများ ဖြစ်သည်။
ရည်ညွှန်းဖော်ပြချက်များနှင့် မိတ်ဆက်ခြင်းကို စာတန်းတစ်ခုအတွင်း အစားထိုးခြင်းအတွက် အသုံးပြုသော sub နည်းလမ်း ဥပမာအဖြင့် စတင်ရန် အကောင်းဆုံးဖြစ်သည်။ ပထမသော်ပါရာမီတာအဖြစ် နည်းလမ်းသည် ဘာကို ပြောင်းရမည်ကို လက်ခံပြီး၊ ဒုတိယအဖြစ် ဘာနှင့် အစားထိုးရမည်ကို လက်ခံသည်။ တတိယသော်ပါရာမီတာတွင် အစားထိုးလုပ်ဆောင်ရန် လိုအပ်သော စာတန်းကို သတ်မှတ်ပါသည်။ စတုတ္ထမြောက် မဖြစ်မနေလိုအပ်ချက်မဟုတ်သော သော်ပါရာမီတာတွင် အစားထိုးမှုအရေအတွက်ကို သတ်မှတ်ပါသည်။ ဤနည်းလမ်းကို အသုံးပြု၍ အရိုးရှင်းဆုံး အစားထိုးမှုတစ်ခုသည် ဤကဲ့သို့ ဖြစ်လိမ့်မည်။
res = re.sub('a', '!', 'bab')
print(res) # 'b!b' ကို ထုတ်ပြလိမ့်မည်
သင်သတိပြုမိသည့်အတိုင်း၊ ရည်ညွှန်းဖော်ပြချက်တွင် အက္ခရာများသည် ၎င်းတို့ကိုယ်တိုင် ကိုယ်စားပြုသည်။ နံပါတ်များအတွက်လည်း အလားတူပင်ဖြစ်သည်။ နံပါတ် 2 ကို ! နှင့် အစားထိုးကြပါစို့။
res = re.sub('2', '!', '12abc3')
print(res) # '1!abc3' ကို ထုတ်ပြလိမ့်မည်
သို့သော် အမှတ်အသားတစ်ခုသည် အထူးသင်္ကေတတစ်ခုဖြစ်ပြီး မည်သည့်သင်္ကေတမဆို ကို ကိုယ်စားပြုသည်။ နောက်ဥပမာတစ်ခုတွင် ဤပုံစံအတိုင်း စာကြောင်းခွဲတစ်ခုကို ရှာကြပါစို့။ အက္ခရာ 'x'၊ ထို့နောက် မည်သည့်သင်္ကေတမဆို၊ ထို့နောက် နောက်ထပ် အက္ခရာ 'x'။
res = re.sub('x.x', '!', 'xax eee')
print(res) # '! eee' ကို ထုတ်ပြလိမ့်မည်
စာတန်းတစ်ခုကို ပေးထားသည်။
txt = 'ahb acb aeb aeeb adcb axeb'
�ုံစံအတိုင်း စာကြောင်းများ 'ahb'၊ 'acb'၊ 'aeb' ကို ရှာဖွေပေးမည့် ရည်ညွှန်းဖော်ပြချက်တစ်ခုကို ရေးပါ။ အက္ခရာ 'a'၊ မည်သည့်သင်္ကေတမဆို၊ အက္ခရာ 'b'။
စာတန်းတစ်ခုကို ပေးထားသည်။
txt = 'aba aca aea abba adca abea'
ပုံစံအတိုင်း စာကြောင်းများ 'abba'၊ 'adca'၊ 'abea' ကို ရှာဖွေပေးမည့် ရည်ညွှန်းဖော်ပြချက်တစ်ခုကို ရေးပါ။ အက္ခရာ 'a'၊ 2 မည်သည့်သင်္ကေတမဆို၊ အက္ခရာ 'a'။
စာတန်းတစ်ခုကို ပေးထားသည်။
txt = 'aba aca aea abba adca abea'
'adca' ကို မဖမ်းမိစေဘဲ 'abba' နှင့် 'abea' စာကြောင်းများကို ရှာဖွေပေးမည့် ရည်ညွှန်းဖော်ပြချက်တစ်ခုကို ရေးပါ။