Maison > base de données > tutoriel mysql > le corps du texte

Exemple d'analyse de la fonction regexp_like() dans MySQL

藏色散人
Libérer: 2019-04-15 11:52:44
original
24232 Les gens l'ont consulté

Dans MySQL, la fonction REGEXP_LIKE() est utilisée pour déterminer si une chaîne correspond à une expression régulière.

La fonction renvoie 1 si la chaîne correspond à l'expression régulière fournie ; 0 si elle ne correspond pas.

Syntaxe :

REGEXP_LIKE(expr, pat[, match_type])
Copier après la connexion

où expr est la chaîne d'entrée et pat est l'expression régulière de la chaîne de test.

Le paramètre optionnel match_type permet d'affiner l'expression régulière.

Par exemple, vous pouvez utiliser match_type pour spécifier ou non une correspondance sensible à la casse.

exemple 1 de regexp_like() - utilisation de base

Ce qui suit est un exemple de base :

SELECT REGEXP_LIKE('Cat', '.*') Result;
Copier après la connexion

Résultat :

+--------+
| Result |
+--------+
|      1 |
+--------+
Copier après la connexion
Copier après la connexion

Dans ce cas, l'expression régulière spécifie n'importe quel caractère dans n'importe quelle séquence, donc bien sûr nous obtenons une correspondance. La fonction renvoie 1 pour indiquer une correspondance.

exemple regexp_like() 2 - aucune correspondance

Voici un exemple où la chaîne d'entrée ne correspond pas à l'expression régulière :

SELECT REGEXP_LIKE('Cat', 'b+') Result;
Copier après la connexion

Résultat :

+--------+
| Result |
+--------+
|      0 |
+--------+
Copier après la connexion
Copier après la connexion

Dans ce cas, l'expression régulière spécifie qu'il doit y avoir un ou plusieurs caractères b dans n'importe quelle séquence. Notre chaîne d'entrée ne contient pas ce caractère, donc 0 est renvoyé.

regexp_like() Exemple 3 - Faire correspondre le début d'une chaîne

Ce qui suit est un exemple d'expression régulière spécifiant qu'une chaîne doit commencer par certains caractères :

SELECT REGEXP_LIKE('Cat', '^Ca') Result;
Copier après la connexion

Résultat :

+--------+
| Result |
+--------+
|      1 |
+--------+
Copier après la connexion
Copier après la connexion

Que se passe-t-il s'il n'y a pas de correspondance :

SELECT REGEXP_LIKE('Cat', '^Da') Result;
Copier après la connexion

Résultat :

+--------+
| Result |
+--------+
|      0 |
+--------+
Copier après la connexion
Copier après la connexion

regexp_like() Exemple 4 - paramètre match_type

Vous pouvez fournir des paramètres supplémentaires pour déterminer le type de correspondance. Cela vous permet de spécifier si la correspondance est sensible à la casse, inclut des terminateurs de ligne, etc.

Ce qui suit est un exemple de spécification d'une correspondance sensible à la casse et d'une correspondance insensible à la casse :

SELECT 
  REGEXP_LIKE('Cat', '^ca', 'c') 'Case-Sensitive',
  REGEXP_LIKE('Cat', '^ca', 'i') 'Case-Insensitive';
Copier après la connexion

Résultat :

+----------------+------------------+
| Case-Sensitive | Case-Insensitive |
+----------------+------------------+
|              0 |                1 |
+----------------+------------------+
Copier après la connexion

Le paramètre match_type peut contenir les caractères suivants :

c : correspondance sensible à la casse.

i : correspond quelle que soit la casse.

m : Mode multiligne. Identifiez les terminateurs de ligne dans les chaînes. Le comportement par défaut consiste à faire correspondre les terminateurs de ligne uniquement au début et à la fin d'une expression de chaîne.

n : Le caractère . correspond au terminateur de ligne. Le paramètre par défaut est . correspondant pour s'arrêter à la fin de la ligne.

u : fins de lignes Unix uniquement. Seuls les caractères de nouvelle ligne sont reconnus comme terminateurs de ligne par les opérateurs de correspondance ., ^ et $ .

Recommandations associées : "Tutoriel mysql"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal