Come corrispondono le espressioni regolari del database MySQL? MySQL regexp come l'utilizzo

Database MySQLCome corrisponde l'espressione regolare?MySQL regexp come l'utilizzo

Espressioni regolari MySQL

Nei capitoli precedenti abbiamo imparato che MySQL può esserlo COME...% per la corrispondenza sfocata.

MySQL supporta anche la corrispondenza di altre espressioni regolari.L'operatore REGEXP viene utilizzato in MySQL per la corrispondenza delle espressioni regolari.

Se conosci PHP o Perl, è abbastanza semplice, poiché la corrispondenza delle espressioni regolari di MySQL è simile a quelle di questi script.

I modelli regolari nella tabella seguente possono essere applicati all'operatore REGEXP.

modo描述
^Corrisponde all'inizio della stringa di input.^ corrisponde anche alla posizione dopo '\n' o '\r' se è impostata la proprietà Multiline dell'oggetto RegExp.
$Corrisponde alla fine della stringa di input.Se è impostata la proprietà Multiline dell'oggetto RegExp, $ corrisponde anche alla posizione prima di '\n' o '\r'.
.Corrisponde a qualsiasi singolo carattere tranne "\n".Per trovare la corrispondenza con qualsiasi carattere incluso '\n', utilizza uno schema come '[.\n]'.
[...]raccolta di caratteri.Corrisponde a uno qualsiasi dei caratteri contenuti.Ad esempio, '[abc]' corrisponderebbe a "plai'a' in n".
[^…]Set di caratteri negativi.Corrisponde a qualsiasi carattere non contenuto.Ad esempio, '[^abc]' corrisponderebbe a 'p' in "plain".
p1|p2|p3Corrisponde a p1 o p2 o p3.Ad esempio, 'z|food' corrisponderebbe a "z" o "food". '(z|f)ood' corrisponde a "zood" o "cibo".
*Corrisponde alla sottoespressione precedente zero o più volte.Ad esempio, zo* corrisponderebbe sia a "z" che a "zoo". * equivale a {0,}.
+Corrisponde alla sottoespressione precedente una o più volte.Ad esempio, 'zo+' corrisponderebbe a "zo" e "zoo", ma non a "z". + equivale a {1,}.
{non}n è un numero intero non negativo.Corrisponde esattamente n volte.Ad esempio, 'o{2}' non corrisponderebbe alla 'o' in "Bob", ma corrisponderebbe a entrambe le o in "food".
{m}Sia m che n sono interi non negativi, dove n <= m.Corrisponde almeno n volte e al massimo m volte.

Esempio

Dopo aver compreso i requisiti regolari di cui sopra, possiamo scrivere istruzioni SQL con espressioni regolari in base ai nostri requisiti.Di seguito elencheremo alcuni piccoli esempi (nome tabella: person_tbl ) per approfondire la nostra comprensione:

Trova tutti i dati che iniziano con 'st' nel campo del nome:

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

Trova tutti i dati che terminano con "ok" nel campo del nome:

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

Trova tutti i dati contenenti la stringa 'mar' nel campo del nome:

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

Trova tutti i dati nel campo del nome che inizia con un carattere vocale o termina con la stringa 'ok':

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

Speranza Chen Weiliang Blog ( https://www.chenweiliang.com/ ) ha condiviso "Come abbinare le espressioni regolari del database MySQL? MySQL regexp like usage" ti aiuterà.

Benvenuti a condividere il link di questo articolo:https://www.chenweiliang.com/cwl-492.html

Benvenuto nel canale Telegram del blog di Chen Weiliang per ricevere gli ultimi aggiornamenti!

🔔 Sii il primo a ricevere la preziosa "Guida all'utilizzo dello strumento AI di marketing dei contenuti ChatGPT" nella directory principale del canale! 🌟
📚 Questa guida contiene un valore enorme, 🌟Questa è un'opportunità rara, non perderla! ⏰⌛💨
Condividi e metti mi piace se ti va!
La tua condivisione e i tuoi like sono la nostra continua motivazione!

 

发表 评论

L'indirizzo email non verrà pubblicato. 必填 项 已 用 * 标注

滚动 到 顶部