Kiel kongruas regulaj esprimoj de MySQL-datumbazo? MySQL regexp kiel uzado

MySQL-datumbazoKiel kongruas la regula esprimo?MySQL regexp kiel uzado

MySQL-regulaj esprimoj

En la antaŭaj ĉapitroj ni lernis ke MySQL povas esti ŜATI...% por malklara kongruo.

MySQL ankaŭ subtenas la kongruon de aliaj regulaj esprimoj.La REGEXP operatoro estas uzata en MySQL por regula esprimo kongruo.

Se vi konas PHP aŭ Perl, ĝi estas sufiĉe simpla, ĉar la regula esprima kongruo de MySQL similas al tiuj de ĉi tiuj skriptoj.

La regulaj ŝablonoj en la sekva tabelo povas esti aplikitaj al la REGEXP-funkciigisto.

ModoPriskribo
^Kongruas kun la komenco de la eniga ĉeno.^ ankaŭ kongruas kun la pozicio post '\n' aŭ '\r' se la Plurlinia posedaĵo de la RegExp objekto estas agordita.
$Kongruas kun la fino de la eniga ĉeno.Se la Multiline-posedaĵo de la RegExp-objekto estas agordita, $ ankaŭ kongruas kun la pozicio antaŭ '\n' aŭ '\r'.
.Kongruas kun ajna unuopa signo krom "\n".Por kongrui kun ajna signo inkluzive de '\n', uzu ŝablonon kiel '[.\n]'.
[...]kolekto de karakteroj.Kongruas kun iu ajn el la enhavitaj signoj.Ekzemple, '[abc]' kongruus kun "plai'a' en n".
[^…]Negativa signaro.Kongruas kun ajna signo ne enhavita.Ekzemple, '[^abc]' kongruus kun 'p' en "ebenaĵo".
p1|p2|p3Kongruas kun p1 aŭ p2 aŭ p3.Ekzemple, 'z|manĝaĵo' egalus aŭ "z" aŭ "manĝaĵo". '(z|f)ood' kongruas kun "zood" aŭ "manĝaĵo".
*Kongruas kun la antaŭa subesprimo nul aŭ pli da fojoj.Ekzemple, zo* egalus "z" same kiel "zoo". * estas ekvivalenta al {0,}.
+Kongruas kun la antaŭa subesprimo unu aŭ plurajn fojojn.Ekzemple, 'zo+' kongruus kun "zo" kaj "zoo", sed ne "z". + estas ekvivalenta al {1,}.
{n}n estas nenegativa entjero.Kongruas precize n fojojn.Ekzemple, 'o{2}' ne kongruus kun la 'o' en "Bob", sed kongruus kun ambaŭ o-oj en "manĝaĵo".
{n,m}Ambaŭ m kaj n estas nenegativaj entjeroj, kie n <= m.Kongruas almenaŭ n fojojn kaj maksimume m fojojn.

ekzemplo

Post kompreni la suprajn regulajn postulojn, ni povas skribi SQL-deklarojn kun regulaj esprimoj laŭ niaj propraj postuloj.Malsupre ni listigos kelkajn malgrandajn ekzemplojn (tabelnomo: person_tbl ) por profundigi nian komprenon:

Trovu ĉiujn datumojn komencantajn per 'st' en la nomkampo:

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

Trovu ĉiujn datumojn, kiuj finiĝas per 'ok' en la nomkampo:

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

Trovu ĉiujn datumojn enhavantajn la 'mar'-ĉenon en la nomkampo:

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

Trovu ĉiujn datumojn en la nomkampo, kiu komenciĝas per vokala signo aŭ finiĝas per la ĉeno 'ok':

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

Hope Chen Weiliang Blogo ( https://www.chenweiliang.com/ ) konigis "Kiel kongrui kun MySQL-datumbazaj regulaj esprimoj? MySQL-regu esprimo kiel uzado" helpos vin.

Bonvenon dividi la ligon de ĉi tiu artikolo:https://www.chenweiliang.com/cwl-492.html

Bonvenon al la Telegram-kanalo de la blogo de Chen Weiliang por ricevi la plej novajn ĝisdatigojn!

🔔 Estu la unua ricevi la valoran "ChatGPT Content Marketing AI Tool Use Guide" en la ĉefa dosierujo de la kanalo! 🌟
📚 Ĉi tiu gvidilo enhavas grandegan valoron, 🌟Ĉi tio estas malofta ŝanco, ne maltrafu ĝin! ⏰⌛💨
Kunhavigu kaj ŝatu se vi ŝatas!
Via kundivido kaj ŝatoj estas nia kontinua instigo!

 

Lasu komenton

Via retpoŝta adreso ne estos publikigita. Bezonataj kampoj estas uzataj * Etikedo

rulumu al la supro