Directori d'articles
Base de dades MySQLCom coincideix l'expressió regular?MySQL ús com l'expressió regular
Expressions regulars MySQL
En els capítols anteriors hem après que MySQL pot ser M'AGRADA...% per a la concordança difusa.
MySQL també admet la concordança d'altres expressions regulars. L'operador REGEXP s'utilitza a MySQL per a la concordança d'expressions regulars.
Si coneixeu PHP o Perl, és bastant senzill, ja que la concordança d'expressions regulars de MySQL és similar a la d'aquests scripts.
Els patrons regulars de la taula següent es poden aplicar a l'operador REGEXP.
Mode | descripció |
---|---|
^ | Coincideix amb l'inici de la cadena d'entrada.^ també coincideix amb la posició després de '\n' o '\r' si s'estableix la propietat Multiline de l'objecte RegExp. |
$ | Coincideix amb el final de la cadena d'entrada.Si s'estableix la propietat Multiline de l'objecte RegExp, $ també coincideix amb la posició abans de "\n" o "\r". |
. | Coincideix amb qualsevol caràcter excepte "\n".Per fer coincidir qualsevol caràcter inclòs '\n', utilitzeu un patró com '[.\n]'. |
[...] | col·lecció de personatges.Coincideix amb qualsevol dels caràcters continguts.Per exemple, "[abc]" coincidiria amb "plai'a' en n". |
[^…] | Conjunt de caràcters negatius.Coincideix amb qualsevol caràcter no contingut.Per exemple, "[^abc]" coincidiria amb "p" a "sense". |
p1|p2|p3 | Coincideix p1 o p2 o p3.Per exemple, "z|menjar" coincidiria amb "z" o amb "menjar". '(z|f)ood' coincideix amb "zood" o "menjar". |
* | Coincideix amb la subexpressió anterior zero o més vegades.Per exemple, zo* coincidiria amb "z" així com amb "zoo". * és equivalent a {0,}. |
+ | Coincideix amb la subexpressió anterior una o més vegades.Per exemple, "zo+" coincidiria amb "zo" i "zoo", però no amb "z". + és equivalent a {1,}. |
{n} | n és un nombre enter no negatiu.Coincideix exactament n vegades.Per exemple, "o{2}" no coincidiria amb la "o" a "Bob", però coincidiria amb les dues o a "menjar". |
{n,m} | Tant m com n són nombres enters no negatius, on n <= m.Coincideix almenys n vegades i com a màxim m vegades. |
Instància
Després d'entendre els requisits habituals anteriors, podem escriure sentències SQL amb expressions regulars segons els nostres propis requisits.A continuació enumerarem alguns petits exemples (nom de la taula: person_tbl ) per aprofundir en la nostra comprensió:
Cerqueu totes les dades que comencen per 'st' al camp del nom:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';
Cerqueu totes les dades que acabin amb "d'acord" al camp del nom:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
Cerqueu totes les dades que contenen la cadena "mar" al camp del nom:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
Cerqueu totes les dades al camp del nom que comencin amb un caràcter de vocal o acabin amb la cadena "d'acord":
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
Bloc d'Hope Chen Weiliang ( https://www.chenweiliang.com/ ) compartit "Com fer coincidir les expressions regulars de la base de dades MySQL? L'ús com l'expressió regular de MySQL" us ajudarà.
Benvingut a compartir l'enllaç d'aquest article:https://www.chenweiliang.com/cwl-492.html
Benvingut al canal de Telegram del bloc de Chen Weiliang per rebre les últimes actualitzacions!
📚 Aquesta guia té un gran valor, 🌟Aquesta és una oportunitat rara, no la perdis! ⏰⌛💨
Comparteix i m'agrada si t'agrada!
Els vostres likes i compartir són la nostra motivació contínua!