Maison  >  Article  >  interface Web  >  Résumé des expressions régulières (résumé pratique)

Résumé des expressions régulières (résumé pratique)

php中世界最好的语言
php中世界最好的语言original
2018-03-30 13:42:241391parcourir

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 la

Priorité
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

b. Lors de la capture du contenu de la correspondance régulière, vous pouvez également capturer le contenu. de la correspondance de groupe ->Capture de groupe

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,} -> apparaît n à plusieurs fois

{n,m} ->


Remarque :


1) Plusieurs situations concernant

a. Mettez-le après le métacaractère non quantificateur, ce qui signifie qu'il apparaît 0-1. times

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)
4. Correspondance régulière

reg.test([string]) ->true correspond au succès false-> ; Correspondance infructueuse

5. Capture régulière

1)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 !

Lecture recommandée :

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!

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