JavaScript ရှိ ရီဂျူလာ အီးစ်ပရက်ရှင်းများ မိတ်ဆက်

ရီဂျူလာ အီးစ်ပရက်ရှင်းများသည် ရှုပ်ထွေးသော ရှာဖွေခြင်းနှင့် အစားထိုးခြင်း (သို့မဟုတ် ရှာဖွေခြင်းသက်သက်) အတွက် ကွန်မန်များ ဖြစ်ပါသည်။ ၎င်းတို့သည် အလွန်စိတ်ဝင်စားဖွယ် အရာများကို လုပ်ဆောင်နိုင်သော်လည်း သင်ယူရာတွင် အနည်းငယ် ခက်ခဲမှုရှိပါသည်။

ရီဂျူလာ အီးစ်ပရက်ရှင်းများနှင့် အလုပ်လုပ်ရန် JavaScript မှာ နည်းလမ်းအချို့ရှိပါသည်။ ကျွန်ုပ်တို့သည် ၎င်းတို့ကို replace နည်းလမ်းဖြင့် စတင်မိတ်ဆက်ပါမည် - ဤနည်းလမ်းကို သင်သိပြီးဖြစ်သည်- ၎င်းသည် ပထမပါရာမီတာအနေဖြင့် အစားထိုးရမည့်အရာ၊ ဒုတိယပါရာမီတာအနေဖြင့် - မည်သည့်အရာနှင့် အစားထိုးရမည်ကို လက်ခံသည်။ ထိုနည်းလမ်းကို အစားထိုးလုပ်ဆောင်မည့် စာကြောင်းပေါ်တွင် အသုံးပြုသည်-

javascript'bab'.replace('a', '!'); // 'b!b' ကို ပြန်ပေးသည်

ဤနည်းလမ်း၏ ပထမပါရာမီတာအနေဖြင့် စာကြောင်းတစ်ကြောင်းသက်သက်မဟုတ်ဘဲ ရီဂျူလာ အီးစ်ပရက်ရှင်း ကို ပေးပို့နိုင်ပါသည်။ ရီဂျူလာ အီးစ်ပရက်ရှင်းသည် ကွန်မန်များစုစည်းမှုတစ်ခုဖြစ်ပြီး စလက်ရှ် / များအတွင်းတွင် ရေးသားထားသည်။ ထို စလက်ရှ်များကို ရီဂျူလာအီးစ်ပရက်ရှင်းများ၏ အကန့်အသတ်များ ဟု ခေါ်ပါသည်။

ရီဂျူလာအီးစ်ပရက်ရှင်းများကိုယ်တိုင် သင်္ကေတနှစ်မျိုး ဖြင့် ဖွဲ့စည်းထားသည်- ၎င်းတို့ကိုယ်တိုင်ကို ကိုယ်စားပြုသော သင်္ကေတများနှင့် အထူးသင်္ကေတများ ဟုခေါ်သော ကွန်မန်သင်္ကေတများ ဖြစ်သည်။

အက္ခရာများနှင့် နံပါတ်များသည် ၎င်းတို့ကိုယ်တိုင် ကိုယ်စားပြုသည်။ အောက်ပါဥပမာတွင် ရီဂျူလာအီးစ်ပရက်ရှင်းအသုံးပြု၍ အက္ခရာ 'a' ကို ! ဖြင့် အစားထိုးပါမည်-

javascript'bab'.replace(/a/, '!'); // 'b!b' ကို ပြန်ပေးသည်

သို့သော် အစက် (.) သည် အထူးသင်္ကေတဖြစ်ပြီး မည်သည့်သင်္ကေတမဆို ကို ကိုယ်စားပြုသည်။ အောက်ပါဥပမာတွင် ဤပုံစံဖြင့် စာကြောင်းကို ရှာဖွေပါမည်- အက္ခရာ 'x'၊ ထို့နောက် မည်သည့်သင်္ကေတမဆို၊ ထို့နောက် ထပ်မံ၍ အက္ခရာ 'x'-

javascript'xax eee'.replace(/x.x/, '!'); // '! eee' ကို ပြန်ပေးသည်

အကန့်အသတ်များနောက်တွင် ပြုပြင်မွမ်းမံမှုများ ကို ရေးသားနိုင်သည် - ရီဂျူလာအီးစ်ပရက်ရှင်း၏ ယေဘုယျဂုဏ်သတ္တိများကို ပြောင်းလဲစေသော ကွန်မန်များဖြစ်သည်။ ဥပမာ၊ ပြုပြင်မွမ်းမံမှု g သည် ကမ္ဘာလုံးဆိုင်ရာရှာဖွေမှုနှင့် အစားထိုးမှုမုဒ်ကို ဖွင့်ပေးသည် - ၎င်းမပါပါက ရီဂျူလာသည် ပထမဆုံးကိုက်ညီမှုကိုသာ ရှာဖွေသည်၊ ထိုပြုပြင်မွမ်းမံမှုဖြင့် - ကိုက်ညီသမျှအားလုံးကို ရှာဖွေသည်။

အောက်ပါဥပမာတွင် ပြုပြင်မွမ်းမံမှု g ကို မဖော်ပြထားပါက ရီဂျူလာသည် ပထမဆုံး ကိုက်ညီမှုကိုသာ ရှာတွေ့မည်-

javascript'aab'.replace(/a/,  '!'); // '!ab' ကို ပြန်ပေးသည်

ယခု ရီဂျူလာသည် ကိုက်ညီသမျှအားလုံးကို ရှာတွေ့မည်-

javascript'aab'.replace(/a/g, '!'); // '!!b' ကို ပြန်ပေးသည်
Задание 1

စာကြောင်းတစ်ကြောင်း ပေးထားသည်-

javascriptlet str = 'ahb acb aeb aeeb adcb axeb';

ရီဂျူလာအီးစ်ပရက်ရှင်း ရေးသားပါ၊ ထိုရီဂျူလာသည် 'ahb'၊ 'acb'၊ 'aeb' စာကြောင်းများကို ဤပုံစံဖြင့် ရှာဖွေရမည်- အက္ခရာ 'a'၊ မည်သည့်သင်္ကေတမဆို၊ အက္ခရာ 'b'။

Задание 2

စာကြောင်းတစ်ကြောင်း ပေးထားသည်-

javascriptlet str = 'aba aca aea abba adca abea';

ရီဂျူလာအီးစ်ပရက်ရှင်း ရေးသားပါ၊ ထိုရီဂျူလာသည် 'abba'၊ 'adca'၊ 'abea' စာကြောင်းများကို ဤပုံစံဖြင့် ရှာဖွေရမည်- အက္ခရာ 'a'၊ 2 မည်သည့်သင်္ကေတမဆို၊ အက္ခရာ 'a'။

Задание 3

စာကြောင်းတစ်ကြောင်း ပေးထားသည်-

javascriptlet str = 'aba aca aea abba adca abea';

ရီဂျူလာအီးစ်ပရက်ရှင်း ရေးသားပါ၊ ထိုရီဂျူလာသည် 'abba' နှင့် 'abea' စာကြောင်းများကို ရှာဖွေရမည်၊ 'adca' ကို မယူမိစေရပါ။