Cette fois je vous apporte un résumé des expressions régulières (résumé pratique). Quelles sont les précautions pour utiliser les expressions régulières en pratique ? regarder. .
Une expression régulière est un modèle de texte composé de caractères ordinaires (tels que les caractères a à z) et de caractères spéciaux (appelés métacaractères). Le modèle décrit une ou plusieurs chaînes à rechercher lors de la recherche du corps du texte. Une expression régulière agit comme un modèle qui fait correspondre un modèle de caractères avec une chaîne recherchée.
L'éditeur suivant résume pour vous quelques points de connaissances sur les expressions régulières. Le contenu spécifique est le suivant :
1. [Métacaractère avec une signification particulière] d -> Correspond à un nombre de 0 à 9, équivalent à [0-9], et son opposé est D -> Correspond à un nombre sauf 0- N'importe quel caractère de 9
w -> Correspond à un nombre ou à un caractère de 0 à 9, a-z, A-Z, _, équivalent à [0-9a-zA-Z_] s -> ..)
b -> Correspond à une limite de mot
t -> Correspond à un onglet
n -> Correspond à une nouvelle ligne $ -> Se termine par un certain métacaractère
-> Caractère de transfert
x|y -> ; ; N'importe lequel de x, y, z
[^xyz] -> Sauf tout caractère de xyz
[a-z] -> Correspond à n'importe quel caractère de a-z
[^a-z] -> caractère sauf a-z
() -> Regroupement en expression régulière
Remarque :
1) À propos de []
a, [+ ] ->Tous les caractères apparaissant entre crochets représentent leur propre significationb, [12-65] ->Ce n'est pas 12-65 mais un des 1/2-6/5
2 ) À propos de () a. La fonction du regroupement est de changer laPriorité
par défaut, par exemple : /^18|19$/, 181, 189, 119, 819, 1819. .. tous correspondent, pas 18 ou 19 comme nous le pensons, mais remplacés par /^(18|19 )$/ est simplement 18 ou 19
c. Référence du groupe, par exemple : /^ (d)(w)21$/, 2 ici est le même contenu que le deuxième regroupement, 1 est le même contenu que le premier regroupement, par exemple : "0aa0" est cohérent avec
[Métacaractère quantificateur représentant la quantité] * -> 0 à multiple
+ -> ? -> 0 à 1
{n } -> apparaît n fois
{n,m} ->
Remarque :
1) Plusieurs situations concernant
b. Mettez-le après le métacaractère du quantificateur, représente la cupidité lors de l'annulation de la capture, par exemple : reg=/d+/; reg.exec("2015") -> this reg=/d+?/; reg.exec("2015") -> "2" c. Ajouter ? : au début du groupe, ce qui signifie que le groupe actuel correspond uniquement et ne capture pas, par exemple : /^(?:d+)$/ d. Ajoutez ?= au début du groupe, pré-vérification positive, par exemple : /^abcdef(?=1|2)$/ Seulement "abcdef1 " et "abcdef2" correspondent
e. Ajoutez ?! en début de groupe, pré-vérification négative, par exemple :/ ^abcdef(?!1|2)$/ Sauf "abcdef1" et "abcdef2" sont pas cohérent, tout le reste tant que "abcdef (n'importe quoi)" est cohérent [Métacaractères représentant le sens]
En plus de ce qui précède, en mode littéral, tous les autres caractères que nous apparaissons représentent leur propre signification
var num=12;
var reg=/^w "+num+"$/; ->Ici "+num+" ne concatène pas la valeur de la variable, mais si elle est " ou +, ce sont des métacaractères
-> Pour ceux qui ont besoin de concaténer des chaînes et des variables Nous ne pouvons utiliser la méthode d'instance que pour créer des expressions régulières
2 .Modificateurs
.
i -> ignoreCase ignore la casse des lettres
g -> correspondance globale globale (l'ajout de g peut résoudre la paresse lors d'une capture régulière)
m -> 🎜>
3. Règles régulières couramment utilisées dans les projets 1)
pour les chiffres valides 2)var reg=/^[+-]?(\d|([1-9]\d+))(\.\d+)?$/;
3) Numéro de téléphone
var reg = /^\w+((-\w+)|(\.\w+))*@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
4) Âge entre 18 et 65 ans
var reg = /^1\d{10}$/;
5) Nom chinois
var reg = /^((18|19)|([2-5]\d)|(6[0-5]))$/;
6) Pièce d'identité card
var reg = /^[\u4e00-\u9fa5]{2,4}$/;
var reg = /^(\d{6})(\d{4})(\d{2})(\d{2})(?:\d{2})(\d)(?:\d|X)$/; //-> 12828(省市县) 1990(年) 12(月) 04(日) 06 1(奇数是男偶数是女) 7(数字或者X)
reg.test([string]) ->true correspond au succès false-> ; Correspondance infructueuse
5. Capture régulière1)reg.exec([string])
-> Faites correspondre en premier. Si la correspondance est réussie, la capture renverra un tableau ; si la correspondance échoue, null sera renvoyé-> La capture régulière est paresseuse et gourmande
-> paresse, ajoutez le modificateur global g à la fin de l'expression régulière -> Pour résoudre le problème de la cupidité, ajoutez ?
après le quantificateur. Je pense que vous maîtrisez la méthode après avoir lu le cas. Dans cet article. Pour des informations plus intéressantes, veuillez prêter attention au site Web chinois PHP Autres articles connexes !
Explication détaillée de l'utilisation des modificateurs de motifs réguliers
Quelles sont les nouvelles fonctionnalités des expressions régulières
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!