JavaScript ရှိ ရီဂျက်စ် ထုံးတမ်းများတွင် စာလုံးအုပ်စုများ
စာလုံးအုပ်စုတစ်ခုလုံးကို တစ်ပြိုင်နက် ရွေးချယ်နိုင်စေသည့် အထူးအမိန့်များ ရှိပါသည်။
အမိန့် \d ဆိုသည်မှာ 0 မှ 9 အထိ ကိန်းဂဏန်းတစ်လုံးကို ဆိုလိုသည်။
အမိန့် \w ဆိုသည်မှာ ကိန်းဂဏန်း၊ လက်တင်အက္ခရာ
သို့မဟုတ် အောက်မျဉ်းဆွဲအမှတ်အသားကို ဖော်ပြသည်။ အမိန့် \s
ဆိုသည်မှာ ကွက်လပ်ဖြစ်စေ၊ ကွက်လပ်စာလုံးဖြစ်စေ ဆိုလိုသည်-
ကွက်လပ်၊ စာကြောင်းအသစ်၊ တဘ်ဘူး။
အက္ခရာအကြီးဖြင့် ရေးခြင်းဖြင့် အမိန့်၏တန်ဖိုးကို ပြောင်းပြန်လှန်နိုင်သည်-
ဥပမာအားဖြင့်၊ \d သည် ကိန်းဂဏန်းဖြစ်လျှင်
\D သည် ကိန်းဂဏန်းမဟုတ်ပါ။
ဥပမာ
ကိန်းဂဏန်းအားလုံးကို ရှာကြည့်ကြပါစို့-
let str = '1 12 123';
let res = str.replace(/\d/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'! !! !!!'
ဥပမာ
ထပ်ကျော့သည့်အော်ပရေတာများသည် အမိန့်-အုပ်စုများကို
တစ်ခုတည်းသော အစုအဖြစ် ရေတွက်သည်၊ ဆိုလိုသည်မှာ အုပ်စုဖွဲ့ကွင်းများ
မလိုအပ်ပါ။ အောက်ပါဥပမာတွင် ရှာဖွေရေး template သည်
ဤကဲ့သို့ ပုံပေါ်သည်- ကိန်းဂဏန်း 0 မှ 9
တစ်ကြိမ် သို့မဟုတ် တစ်ကြိမ်ထက်ပို၍-
let str = '1 12 123 abc @@@';
let res = str.replace(/\d+/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'! ! ! abc @@@'
ဥပမာ
အောက်ပါဥပမာတွင် ရှာဖွေရေး template သည်
ဤကဲ့သို့ ပုံပေါ်သည်- ဘာမဆို တစ်ကြိမ် သို့မဟုတ် တစ်ကြိမ်ထက်ပို၍၊
သို့သော် 0 မှ 9 အထိ ကိန်းဂဏန်းမဟုတ်-
let str = '123abc3@@';
let res = str.replace(/\D+/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'123!3!'
ဥပမာ
ဤဥပမာတွင် ရှာဖွေရေး template သည် ဤကဲ့သို့ ပုံပေါ်သည်- ကွက်လပ်စာလုံး တစ်ကြိမ်-
let str = '1 12 123 abc @@@';
let res = str.replace(/\s/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'1!12!123!abc!@@@'
ဥပမာ
ဤဥပမာတွင် ရှာဖွေရေး template သည် ဤကဲ့သို့ ပုံပေါ်သည်-
ကွက်လပ်စာလုံး မဟုတ် တစ်ကြိမ် သို့မဟုတ် တစ်ကြိမ်ထက်ပို။
ကွက်လပ်များဖြင့် ခွဲထားသော စာကြောင်းခွဲအားလုံးကို
'!' ဖြင့် အစားထိုးသွားပါမည်-
let str = '1 12 123 abc @@@';
let res = str.replace(/\S+/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'! ! ! ! !'
ဥပမာ
ဤဥပမာတွင် ရှာဖွေရေး template သည် ဤကဲ့သို့ ပုံပေါ်သည်-
ကိန်းဂဏန်း သို့မဟုတ် အက္ခရာ တစ်ကြိမ် သို့မဟုတ် တစ်ကြိမ်ထက်ပို။
ကိန်းဂဏန်းများနှင့် အက္ခရာများဖြင့် ဖွဲ့စည်းထားသော စာကြောင်းခွဲအားလုံးကို
'!' ဖြင့် အစားထိုးသွားပါမည်-
let str = '1 12 123a Abc @@@';
let res = str.replace(/\w+/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'! ! ! ! @@@'
ဥပမာ
ဤဥပမာတွင် ရှာဖွေရေး template သည် ဤကဲ့သို့ ပုံပေါ်သည်-
ကိန်းဂဏန်းမဟုတ် နှင့် အက္ခရာမဟုတ် တစ်ကြိမ် သို့မဟုတ် တစ်ကြိမ်ထက်ပို။
ကျွန်ုပ်တို့၏ကိစ္စတွင် ဤဖွင့်ဆိုချက်နှင့် ကိုက်ညီသော အရာမှာ
'@@@' နှင့် ကွက်လပ်အားလုံး (ထိုအရာများသည်လည်း
ကိန်းဂဏန်းများမဟုတ်၊ အက္ခရာများလည်းမဟုတ်ပါ)။
အောက်ဆုံးတွင် '!' တစ်လုံးရှိသည်ကို သတိပြုပါ-
၎င်းသည် စာကြောင်း ' @@@' - ရှေ့တွင် ကွက်လပ်နှင့်
အဖြစ်သို့ ပြောင်းလဲသွားသည်-
let str = '1 12 123 Abc @@@';
let res = str.replace(/\W+/g, '!');
ရလဒ်အဖြစ် variable ထဲတွင် အောက်ပါအတိုင်း ရေးမှတ်သွားပါမည်-
'1!12!123!Abc!'
လက်တွေ့လေ့ကျင့်ခန်းများ
စာကြောင်းတစ်ခုပေးထားသည်-
let str = 'a1a a2a a3a a4a a5a aba aca';
Regular expression တစ်ခုရေးပါ၊ ၎င်းသည် စာကြောင်းများကို ရှာပါမည်၊
ထိုစာကြောင်းများတွင် ဘေးဘက်စွန်းများတွင် အက္ခရာ 'a' များ ရှိနေပြီး၊
၎င်းတို့ကြားတွင် ကိန်းဂဏန်းတစ်လုံး ရှိသည်။
စာကြောင်းတစ်ခုပေးထားသည်-
let str = 'a1a a22a a333a a4444a a55555a aba aca';
Regular expression တစ်ခုရေးပါ၊ ၎င်းသည် စာကြောင်းများကို ရှာပါမည်၊
ထိုစာကြောင်းများတွင် ဘေးဘက်စွန်းများတွင် အက္ခရာ 'a' များ ရှိနေပြီး၊
၎င်းတို့ကြားတွင် ကိန်းဂဏန်းမည်မျှပင်ဖြစ်ဖြစ် ရှိသည်။
စာကြောင်းတစ်ခုပေးထားသည်-
let str = 'aa a1a a22a a333a a4444a a55555a aba aca';
Regular expression တစ်ခုရေးပါ၊ ၎င်းသည် စာကြောင်းများကို ရှာပါမည်၊
ထိုစာကြောင်းများတွင် ဘေးဘက်စွန်းများတွင် အက္ခရာ 'a' များ ရှိနေပြီး၊
၎င်းတို့ကြားတွင် ကိန်းဂဏန်းမည်မျှပင်ဖြစ်ဖြစ် (ထို့အပြင်
သုညကိန်းဂဏန်းများလည်းပါဝင်သည်၊ ဆိုလိုသည်မှာ စာကြောင်း 'aa') ရှိသည်။
စာကြောင်းတစ်ခုပေးထားသည်-
let str = 'avb a1b a2b a3b a4b a5b abb acb';
Regular expression တစ်ခုရေးပါ၊ ၎င်းသည် အောက်ပါပုံစံရှိသော စာကြောင်းများကို
ရှာပါမည်- ဘေးဘက်စွန်းများတွင် အက္ခရာ
'a' နှင့် 'b' များ ရှိနေပြီး၊ ၎င်းတို့ကြားတွင် -
ကိန်းဂဏန်းမဟုတ်၊ ကွက်လပ်လည်းမဟုတ် ရှိသည်။
စာကြောင်းတစ်ခုပေးထားသည်-
let str = 'ave a#b a2b a$b a4b a5b a-b acb';
Regular expression တစ်ခုရေးပါ၊ ၎င်းသည် အောက်ပါပုံစံရှိသော စာကြောင်းများကို
ရှာပါမည်- ဘေးဘက်စွန်းများတွင် အက္ခရာ
'a' နှင့် 'b' များ ရှိနေပြီး၊ ၎င်းတို့ကြားတွင် -
အက္ခရာမဟုတ်၊ ကိန်းဂဏန်းမဟုတ်၊ ကွက်လပ်လည်းမဟုတ် ရှိသည်။
စာကြောင်းတစ်ခုပေးထားသည်-
let str = 'ave a#a a2a a$a a4a a5a a-a aca';
Regular expression တစ်ခုရေးပါ၊ ၎င်းသည် ကွက်လပ်အားလုံးကို
'!' ဖြင့် အစားထိုးပါမည်။