Maison >base de données >tutoriel mysql >Exemple détaillé d'expression régulière MySQL (Regexp)

Exemple détaillé d'expression régulière MySQL (Regexp)

藏色散人
藏色散人original
2019-03-18 14:01:274419parcourir

MySQL prend en charge une autre opération de correspondance de modèles basée sur les expressions régulières et l'opérateur REGEXP. (Recommandations associées : "Tutoriel MySQL")

Exemple détaillé d'expression régulière MySQL (Regexp)

1. Il fournit une correspondance de modèles puissante et flexible, ce qui peut nous aider à obtenir de la puissance pour le système de base de données. Utilitaire de recherche.

2.REGEXP est l'opérateur utilisé lors de la mise en correspondance de modèles d'expressions régulières.

3.RLIKE est un synonyme. Il prend également en charge un certain nombre de métacaractères qui offrent une plus grande flexibilité et un meilleur contrôle lors de la mise en correspondance de modèles.

4. La barre oblique inverse est utilisée comme caractère d'échappement. Si des doubles barres obliques inverses sont utilisées, elles ne sont prises en compte que dans la correspondance de modèles.

5. Ce n'est pas sensible à la casse.

PATTERN 模式匹配的是什么
* 在它之前的零个或多个字符串实例
+ 在它之前的一个或多个字符串实例
. 任何一个角色
? 匹配前面的字符串的零个或一个实例。
^ 插入符号(^)匹配字符串的开头
$ 字符串结束
[abc] 方括号之间列出的任何字符
[^abc] 方括号之间未列出的任何字符
[A-Z] 匹配任何大写字母。
[a-z] 匹配任何小写字母
[0-9] 匹配从0到9的任何数字。
[[:0bdcb80d4ef17d1c715cd63d04a0fb15:]] 匹配单词的结尾。
[:class:] 匹配一个字符类,即[:alpha:]匹配字母,[:space:]匹配空格,[:punct:]匹配标点符号,[:upper:]匹配上层字母。
p1|p2|p3 轮换; 匹配任何模式p1,p2或p3
{n} n前面元素的实例
{m,n} m到前面元素的n个实例

Exemple :

Correspond au début de la chaîne (^) :

donne tous les noms commençant par "sa". Exemple – sam, samarth.

SELECT name FROM student_tbl WHERE name REGEXP '^sa';

correspond à la fin de la chaîne ($) :

donne tous les noms se terminant par "on". Exemple - norton, merton.

SELECT name FROM student_tbl WHERE name REGEXP 'on$';

correspond à zéro ou une instance (?) de la chaîne qui la précède :

donne toutes les instances contenant le titre "com". Exemple de comédie, comédie romantique.

SELECT title FROM movies_tbl WHERE title REGEXP 'com?';

correspond à n'importe quel modèle dans p1, p2 ou p3 (p1|p2|p3) :

donne tout contient "être " ou "ae". Exemple - Abel, Baer.

SELECT name FROM student_tbl WHERE REGEXP 'be|ae' ;

correspond à n'importe quel caractère répertorié entre crochets ([abc]) :

donne un caractère contenant "j" ou Tous les noms pour "z". Exemple - Lorentz, Rajs.

SELECT name FROM student_tbl WHERE REGEXP '[jz]' ;

Correspond à 'a' à 'z' - ([a-z]) ([a-z] et (.) n'importe quelle lettre minuscule :

Récupère tous les noms contenant les lettres "b" et "g", suivies de n'importe quel caractère, suivi de la lettre "a". Par exemple, Tobias, sewall.

correspond à n'importe quel caractère (. )

SELECT name FROM student_tbl WHERE REGEXP '[b-g].[a]' ;

correspond à tout caractère non répertorié entre crochets ([^abc]) :

donne tous les caractères qui ne contiennent pas de "j" ou ". z ". Par exemple : nerton, sewall.

SELECT name FROM student_tbl WHERE REGEXP '[^jz]' ;

correspond aux mots se terminant par [[:>:]] :

donne tous les caractères se terminant par " ack ". Exemple - Noir.

SELECT title FROM movies_tbl WHERE REGEXP 'ack[[:>:]]';

correspond aux mots commençant par [[:<:]] :

donne tous les caractères commençant par " pour". Exemple - Oublier Sarah Marshal.

SELECT title FROM movies_tbl WHERE title REGEXP &#39;[[:<:]]for&#39;;

correspond à une classe de caractères [:class:]:

c'est-à-dire [:lower:]- Caractères minuscules, [:digit: ] - caractères numériques, etc.

ne donne que tous les titres contenant des caractères alphabétiques. Exemples - choses étranges, Avengers.

SELECT title FROM movies_tbl WHERE REGEXP &#39;[:alpha:]&#39; ;

Cet article concerne un exemple détaillé d'expression régulière MySQL (Regexp). ), j'espère que cela sera utile aux amis qui en ont besoin

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!

Déclaration:
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