Hogyan egyeznek a MySQL adatbázis reguláris kifejezései? MySQL regexp-szerű használat

MySQL adatbázisHogyan egyezik a reguláris kifejezés?MySQL regexp-szerű használat

MySQL reguláris kifejezések

Az előző fejezetekben megtanultuk, hogy a MySQL átadható TETSZIK...% fuzzy illesztéshez.

A MySQL más reguláris kifejezések egyeztetését is támogatja, a REGEXP operátort a MySQL-ben használják a reguláris kifejezések egyeztetésére.

Ha ismeri a PHP-t vagy a Perl-t, akkor ez nagyon egyszerű, mivel a MySQL reguláris kifejezés-illesztése hasonló ezeknek a szkripteknek.

A következő táblázat szabályos mintái alkalmazhatók a REGEXP operátorra.

módleírás
^Megfelel a bemeneti karakterlánc elejének.^ a '\n' vagy '\r' utáni pozícióval is megegyezik, ha a RegExp objektum többsoros tulajdonsága be van állítva.
$Megfelel a bemeneti karakterlánc végének.Ha a RegExp objektum többsoros tulajdonsága be van állítva, a $ a '\n' vagy '\r' előtti pozícióval is megegyezik.
.Bármely karakterrel egyezik, kivéve a „\n” karaktert.A '\n' karaktert is beleértve, használjon olyan mintát, mint a '[.\n]'.
[...]karakterek gyűjteménye.Megfelel a benne szereplő karakterek bármelyikének.Például az „[abc]” egyezne a „plai„a” az n-ben”.
[^…]Negatív karakterkészlet.A nem szereplő karakterekkel megegyezik.Például a '[^abc]' megfelel a 'p'-nek a "plain"-ben.
p1|p2|p3Megfelel a p1-nek vagy a p2-nek vagy a p3-nak.Például a 'z|étel' egyezne a "z" vagy az "étel" kifejezéssel. A '(z|f)ood' megfelel a "zood" vagy a "food" kifejezésnek.
*Az előző részkifejezéshez nulla vagy többször egyezik.Például a zo* megegyezik a "z"-vel és a "zoo"-val. * egyenértékű a következővel: {0,}.
+Egy vagy többször megegyezik az előző részkifejezéssel.Például a „zo+” egyezne a „zo”-val és „zoo”-val, de nem a „z”-vel. + egyenértékű a következővel: {1,}.
{nem}n egy nem negatív egész szám.Pontosan n-szer egyezik.Például az „o{2}” nem egyezik a „Bob” „o”-jával, de az „étel”-ben mindkét o-val megegyezik.
{n, m}Az m és az n is nemnegatív egész szám, ahol n <= m.Legalább n-szer és legfeljebb m-szer egyezik.

Példa

A fenti reguláris követelmények megértése után saját követelményeink szerint írhatunk SQL utasításokat reguláris kifejezésekkel.Az alábbiakban felsorolunk néhány apró példát (tábla neve: person_tbl ), hogy jobban megértsük:

Keresse meg a névmezőben az „st” betűvel kezdődő összes adatot:

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

Keresse meg az összes olyan adatot, amely „ok”-ra végződik a névmezőben:

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

Keresse meg a „mar” karakterláncot tartalmazó összes adatot a névmezőben:

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

Keresse meg az összes adatot a névmezőben, amely magánhangzó karakterrel kezdődik vagy az „ok” karakterlánccal végződik:

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

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) megosztott "Hogyan illeszthető a MySQL adatbázis reguláris kifejezései? A MySQL regexp like használata" segít.

Üdvözöljük a cikk linkjének megosztásában:https://www.chenweiliang.com/cwl-492.html

Üdvözöljük Chen Weiliang blogjának Telegram csatornáján, hogy értesüljön a legfrissebb hírekről!

🔔 Legyen Ön az első, aki megkapja az értékes "ChatGPT Content Marketing AI Tool használati útmutatót" a csatorna felső könyvtárában! 🌟
📚 Ez az útmutató hatalmas értéket tartalmaz, 🌟 Ritka lehetőség ez, ne hagyd ki! ⏰⌛💨
Oszd meg és lájkold, ha tetszik!
Az Ön megosztása és lájkja folyamatos motivációnk!

 

发表 评论

Az e-mail címed nem kerül nyilvánosságra. A kötelező mezőket használjuk * Címke

görgess a tetejére