Kako se podudaraju regularni izrazi baze podataka MySQL? Upotreba poput MySQL regularnog izraza

MySQL baza podatakaKako se podudara regularni izraz?MySQL upotreba poput regexp-a

MySQL regularni izrazi

U prethodnim poglavljima naučili smo da MySQL može biti KAO...% za nejasno podudaranje.

MySQL također podržava podudaranje drugih regularnih izraza. Operator REGEXP koristi se u MySQL-u za podudaranje regularnih izraza.

Ako poznajete PHP ili Perl, prilično je jednostavno jer je podudaranje regularnih izraza MySQL-a slično onima ovih skripti.

Uobičajeni uzorci u sljedećoj tablici mogu se primijeniti na REGEXP operator.

načinopis
^Odgovara početku ulaznog niza.^ također odgovara položaju nakon '\n' ili '\r' ako je postavljeno svojstvo Multiline objekta RegExp.
$Odgovara kraju ulaznog niza.Ako je postavljeno svojstvo Multiline objekta RegExp, $ također odgovara poziciji prije '\n' ili '\r'.
.Odgovara bilo kojem pojedinačnom znaku osim "\n".Za podudaranje bilo kojeg znaka uključujući '\n', upotrijebite uzorak poput '[.\n]'.
[...]zbirka likova.Odgovara bilo kojem od sadržanih znakova.Na primjer, '[abc]' odgovarao bi "plai'a' u n".
[^…]Negativan skup znakova.Odgovara bilo kojem znaku koji nije sadržan.Na primjer, '[^abc]' bi odgovarao 'p' u "plain".
p1|p2|p3Odgovara p1 ili p2 ili p3.Na primjer, 'z|hrana' bi odgovarala ili "z" ili "hrana". '(z|f)ood' odgovara "zood" ili "food".
*Poklapa se s prethodnim podizrazom nula ili više puta.Na primjer, zo* bi odgovarao "z" kao i "zoo". * je ekvivalentan {0,}.
+Podudara se s prethodnim podizrazom jednom ili više puta.Na primjer, 'zo+' odgovaralo bi "zo" i "zoo", ali ne i "z". + je ekvivalent {1,}.
{ne}n je nenegativan cijeli broj.Poklapa se točno n puta.Na primjer, 'o{2}' ne bi odgovaralo 'o' u "Bob", ali bi odgovaralo oba o u "hrana".
{n,m}I m i n su nenegativni cijeli brojevi, gdje je n <= m.Podudara se najmanje n puta i najviše m puta.

primjer

Nakon razumijevanja gore navedenih redovitih zahtjeva, možemo pisati SQL naredbe s regularnim izrazima prema vlastitim zahtjevima.U nastavku ćemo navesti nekoliko malih primjera (naziv tablice: person_tbl ) kako bismo produbili svoje razumijevanje:

Pronađite sve podatke koji počinju sa 'st' u polju imena:

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

Pronađite sve podatke koji završavaju s 'ok' u polju imena:

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

Pronađite sve podatke koji sadrže niz 'mar' u polju imena:

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

Pronađite sve podatke u polju imena koji počinju samoglasnikom ili završavaju nizom 'ok':

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

Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) dijeli "Kako uskladiti regularne izraze u MySQL bazi podataka? MySQL regexp like usage" će vam pomoći.

Dobrodošli da podijelite vezu ovog članka:https://www.chenweiliang.com/cwl-492.html

Dobro došli na Telegram kanal Chen Weiliangovog bloga da dobijete najnovija ažuriranja!

🔔 Budite prvi koji će dobiti vrijedan "Vodič za korištenje AI alata za marketing sadržaja ChatGPT" u direktoriju na vrhu kanala! 🌟
📚 Ovaj vodič ima veliku vrijednost, 🌟 Ovo je rijetka prilika, nemojte je propustiti! ⏰⌛💨
Podijelite i lajkajte ako vam se sviđa!
Vaše dijeljenje i lajkovi naša su stalna motivacija!

 

发表 评论

Vaša email adresa neće biti objavljena. Koriste se obavezna polja * Označiti

pomaknite se na vrh