MySQL ဒေတာဘေ့စ်ပုံမှန်အသုံးအနှုန်းများသည်မည်သို့ကိုက်ညီသနည်း။ အသုံးပြုမှုကဲ့သို့ MySQL regexp

MySQL ဒေတာဘေ့စ်ပုံမှန်အသုံးအနှုန်းက ဘယ်လိုကိုက်ညီလဲ။က MySQL အသုံးပြုမှုကဲ့သို့ regexp

MySQL ပုံမှန်အသုံးအနှုန်းများ

ယခင်အခန်းများတွင် MySQL ဖြစ်နိုင်ကြောင်း သင်ယူခဲ့သည်။ ကြိုက်သည်...% fuzzy matching အတွက်။

MySQL သည် အခြားသော ပုံမှန်အသုံးအနှုန်းများနှင့် ကိုက်ညီမှုကိုလည်း ပံ့ပိုးပေးပါသည်။ REGEXP အော်ပရေတာအား ပုံမှန်ဖော်ပြချက် ကိုက်ညီမှုအတွက် MySQL တွင် အသုံးပြုပါသည်။

PHP သို့မဟုတ် Perl ကိုသင်သိပါက MySQL ၏ပုံမှန်အသုံးအနှုန်းကိုက်ညီမှုသည်ဤ scripts များနှင့်ဆင်တူသောကြောင့်၎င်းသည်အလွန်ရိုးရှင်းပါသည်။

အောက်ပါဇယားရှိ ပုံမှန်ပုံစံများကို REGEXP အော်ပရေတာသို့ အသုံးချနိုင်သည်။

mode ကိုဖော်ပြချက်
^ထည့်သွင်းသည့်စာကြောင်း၏အစနှင့် ကိုက်ညီသည်။^ သည် RegExp အရာဝတ္ထု၏ Multiline ပိုင်ဆိုင်မှုကို သတ်မှတ်ပါက '\n' သို့မဟုတ် '\r' ပြီးနောက် အနေအထားနှင့်လည်း ကိုက်ညီပါသည်။
$input string ၏အဆုံးနှင့် ကိုက်ညီပါသည်။RegExp အရာဝတ္ထု၏ Multiline ပိုင်ဆိုင်မှုကို သတ်မှတ်ပါက၊ $ သည် '\n' သို့မဟုတ် '\r' မတိုင်မီ အနေအထားနှင့်လည်း ကိုက်ညီပါသည်။
."\n" မှလွဲ၍ မည်သည့်ဇာတ်ကောင်မဆို ကိုက်ညီပါသည်။'\n' အပါအဝင် မည်သည့်ဇာတ်ကောင်ကိုမဆို ကိုက်ညီရန် '[.\n]' ကဲ့သို့သော ပုံစံကို အသုံးပြုပါ။
[ ... ]ဇာတ်ကောင်များစုစည်းမှု။ပါရှိသော ဇာတ်ကောင်များထဲမှ တစ်ခုနှင့်တစ်ခု ကိုက်ညီပါသည်။ဥပမာအားဖြင့် '[abc]' သည် "plain တွင် 'a'။
[^…]အနှုတ်လက္ခဏာ အစုံ။မပါရှိသော မည်သည့်ဇာတ်ကောင်ကိုမဆို လိုက်ဖက်သည်။ဥပမာအားဖြင့်၊ '[^abc]' သည် "plain" တွင် 'p' နှင့် ကိုက်ညီလိမ့်မည်။
p1|p2|p3p1 သို့မဟုတ် p2 သို့မဟုတ် p3 နှင့် ကိုက်ညီသည်။ဥပမာအားဖြင့်၊ 'z|food' သည် "z" သို့မဟုတ် "food" တစ်ခုခုနှင့် ကိုက်ညီလိမ့်မည်။ '(z|f)ood' သည် "zood" သို့မဟုတ် "food" နှင့် ကိုက်ညီသည်။
*ရှေ့ဖော်ပြချက်ခွဲကို သုည သို့မဟုတ် ထို့ထက်ပိုသောအကြိမ်များ ကိုက်ညီသည်။ဥပမာအားဖြင့်၊ zo* သည် "z" နှင့် "zoo" တို့နှင့် တူညီသည်။ * သည် {0,} နှင့် ညီမျှသည်။
+ရှေ့ဖော်ပြချက်ခွဲကို တစ်ကြိမ် သို့မဟုတ် ထို့ထက်ပိုသော ကြိမ်နှင့် ကိုက်ညီသည်။ဥပမာအားဖြင့် 'zo+' သည် "zo" နှင့် "zoo" နှင့် ကိုက်ညီသော်လည်း "z" မဟုတ်ပါ။ + သည် {1,} နှင့် ညီမျှသည်။
{n}n သည် အနုတ်လက္ခဏာမဟုတ်သော ကိန်းပြည့်ဖြစ်သည်။အတိအကျ n အကြိမ်။ဥပမာအားဖြင့်၊ 'o{2}' သည် "Bob" ရှိ 'o' နှင့် တူညီမည်မဟုတ်သော်လည်း "အစားအသောက်" တွင် o နှစ်ခုလုံး တူညီမည်ဖြစ်သည်။
{n၊m}m နှင့် n နှစ်ခုစလုံးသည် အနုတ်လက္ခဏာမဟုတ်သော ကိန်းပြည့်များဖြစ်ပြီး n <= m ဖြစ်သည်။အနည်းဆုံး n ကြိမ်နှင့် အများဆုံး m အကြိမ်။

ဥပမာ

အထက်ဖော်ပြပါ ပုံမှန်လိုအပ်ချက်များကို နားလည်ပြီးနောက်၊ ကျွန်ုပ်တို့၏ကိုယ်ပိုင်လိုအပ်ချက်များနှင့်အညီ ပုံမှန်အသုံးအနှုန်းများဖြင့် SQL Statement များကို ရေးသားနိုင်ပါသည်။အောက်တွင် ကျွန်ုပ်တို့၏နားလည်မှုကို ပိုမိုနက်ရှိုင်းစေရန်အတွက် နမူနာအနည်းငယ် (ဇယားအမည်- person_tbl) ကို ဖော်ပြပါမည်။

အမည်အကွက်တွင် 'st' ဖြင့်စသော ဒေတာအားလုံးကို ရှာပါ-

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

အမည်အကွက်တွင် 'ok' ဖြင့်အဆုံးသတ်သော ဒေတာအားလုံးကို ရှာပါ-

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

အမည်အကွက်တွင် 'mar' စာကြောင်းပါရှိသော အချက်အလက်အားလုံးကို ရှာပါ-

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

သရအက္ခရာဖြင့် အစပြုသော သို့မဟုတ် 'ok' ဟူသော စာကြောင်းဖြင့် အဆုံးသတ်သည့် အမည်အကွက်ရှိ ဒေတာအားလုံးကို ရှာပါ-

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

မျှော်လင့်ခြင်း Chen Weiliang ဘလော့ဂ် ( https://www.chenweiliang.com/ ) မျှဝေထားသည် "MySQL ဒေတာဘေ့စ် ပုံမှန်အသုံးအနှုန်းများနှင့် ကိုက်ညီအောင် ဘယ်လိုလုပ်မလဲ။ အသုံးပြုမှုကဲ့သို့ MySQL regexp" သည်သင့်အားကူညီလိမ့်မည်။

ဤဆောင်းပါး၏ link ကိုမျှဝေရန်ကြိုဆိုပါတယ်:https://www.chenweiliang.com/cwl-492.html

နောက်ဆုံးထွက်မွမ်းမံမှုများကို ရယူရန် Chen Weiliang ၏ တယ်လီဂရမ်ချန်နယ်မှ ကြိုဆိုပါသည်။

🔔 ချန်နယ်ထိပ်တန်းလမ်းညွှန်တွင် တန်ဖိုးရှိသော "ChatGPT အကြောင်းအရာစျေးကွက်ရှာဖွေရေး AI ကိရိယာအသုံးပြုမှုလမ်းညွှန်" ကို ပထမဆုံးရရှိသူဖြစ်လိုက်ပါ။ 🌟
📚 ဤလမ်းညွှန်တွင် တန်ဖိုးကြီးကြီးမားမားပါရှိသည်၊ 🌟ဒါက ရှားပါးအခွင့်အရေးပါ၊ လက်လွတ်မခံပါနဲ့။ ⏰⌛💨
ကြိုက်ရင် Share ပြီး Like လုပ်ပါ။
သင်၏မျှဝေခြင်းနှင့် လိုက်ခ်များသည် ကျွန်ုပ်တို့၏ စဉ်ဆက်မပြတ်လှုံ့ဆော်မှုဖြစ်သည်။

 

မှတ်ချက်များ

သင့်ရဲ့အီးမေးလ်လိပ်စာကိုထုတ်ဝေမည်မဟုတ် 用项已用用 * တံဆိပ်

အပေါ်မှလှိမ့်