Cet article partage principalement avec vous un résumé de certaines expressions régulières couramment utilisées. Il a une bonne valeur de référence et j'espère qu'il sera utile à tout le monde. Suivons l'éditeur pour y jeter un œil, j'espère que cela pourra aider tout le monde.
Utilisez des symboles pour décrire les règles d'écriture :/ Écrivez l'expression régulière au milieu/
^ : correspond au début, $ : correspond à la fin /^ve//ve$ ; commençant par ve / se termine par ve
d : un nombre arbitraire
w : un nombre ou une lettre arbitraire
s : n'importe quelle chaîne
{n} : Répétez l'expression de gauche n fois
{m,n} : Répétez l'expression de gauche au moins m fois, et au plus n fois
{m, } : Répétez l'expression de gauche gauche au moins m fois, au maximum sans limite
+ : l'expression de gauche apparaît au moins une fois, au maximum sans limite, équivalent à {1,}
* : l'expression sur la gauche apparaît au moins 0 fois, aucune limite au maximum, équivalent à {0,}
? : L'expression de gauche apparaît au moins 0 fois et au maximum 1 fois, équivalent à {0, 1}
[a, b, c] : ne peut prendre qu'un des contenus entre crochets
[a-z] ou [1-9] : prend un des contenus dans la plage
|: représente ou; (): niveau de priorité; : Escape--"( )" sont les parenthèses qui vont apparaître et doivent être échappées
Expressions régulières couramment utilisées :
1 Expression des chiffres de contrôle
1 Nombre : ^[0-9]*$.
Numéro à 2 n chiffres : ^d{n}$
3 Nombre avec au moins n chiffres : ^d{n,}$
4 Nombre avec m-n chiffres : ^d{m,n}$
5 Nombres commençant par zéro et non nul : ^(0|[1-9][0-9]*)$
6 Nombres commençant par une valeur différente de zéro et jusqu'à deux décimales : ^ ([1-9][0-9]*)+(.[0-9]{1,2})?$
7 Nombres positifs ou négatifs avec 1 à 2 décimales : ^(-)?d+(.d{1,2})?$
8 Nombres positifs, nombres négatifs et décimales : ^( -|+)?d+(.d+)?$
9 Nombre réel positif avec deux décimales : ^[0-9]+(.[0-9]{2})?$
10 Nombre réel positif avec 1 à 3 décimales : ^[0-9]+(.[0-9]{1,3})?$
11 Entier positif non nul : ^ [1-9]d*$ ou ^([1-9][0-9]*){1,3}$ ou ^+?[1-9][0-9]*$
12 Entier négatif non nul : ^-[1-9][]0-9"*$ ou ^-[1-9]d*$
13 Entier non négatif : ^d+$ ou ^ [1-9]d*|0$
14 Entier non positif : ^-[1-9]d*|0$ ou ^((-d+)|(0+))$
15 Nombre à virgule flottante non négatif : ^d+(.d+)?$ ou ^[1-9]d*.d*|0.d*[1-9]d*|0?.0 +|0$
16 Nombre à virgule flottante non positif : ^((-d+(.d+)?)|(0+(.0+)?))$ ou ^(-([1- 9]d*.d *|0.d*[1-9]d*))|0?.0+|0$
17 Nombre à virgule flottante positif : ^[1-9]d* .d*|0.d *[1-9]d*$ ou ^(([0-9]+.[0-9]*[1-9][0-9]*)|([0- 9]*[1-9 ][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$
18 Nombre à virgule flottante négatif : ^- ([1-9]d*.d*|0.d*[1-9]d*)$ ou ^(-(([0-9]+.[0-9 ]*[1-9][ 0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[ 1-9][0-9 ]*)))$
19 Nombre à virgule flottante : ^(-?d+)(.d+)?$ ou ^-?([1-9]d*. d*|0.d*[1 -9]d*|0?.0+|0)$
2. Expression des caractères de contrôle
1 chinois caractères : ^[u4e00-u9fa5] {0,}$
2 Anglais et chiffres : ^[A-Za-z0-9]+$ ou ^[A-Za-z0-9]{4, 40}$
3 Tous les caractères d'une longueur de 3 à 20 : ^.{3,20}$
4 Une chaîne de 26 lettres anglaises : ^[A-Za-z] +$
5 Une chaîne composée de 26 lettres anglaises majuscules : ^[A-Z]+$
6 Une chaîne composée de 26 lettres anglaises minuscules : ^[a-z]+$
7 Une chaîne composée de chiffres et de 26 lettres anglaises : ^[A-Za-z0-9]+$
8 Une chaîne composée de chiffres, de 26 lettres anglaises ou de traits de soulignement : ^w+$ ou ^w {3,20}$
9 chinois, anglais, chiffres, traits de soulignement compris : ^[u4E00-u9FA5A-Za-z0-9_]+$
10 chinois, anglais, chiffres, mais sans les traits de soulignement et autres symboles : ^[u4E00- u9FA5A -Za-z0-9]+$ ou ^[u4E00-u9FA5A-Za-z0-9]{2,20}$
11 Vous pouvez saisir des caractères tels que ^%&',;=? $" :[^%&',;=?$x22]+
12 Il est interdit de saisir des caractères contenant ~ : [^~x22]+
3. Expressions pour besoins spéciaux
1 Adresse e-mail : ^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$
2 Nom de domaine : [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA- Z0-9]{ 0,62})+/.?
3URL Internet : [a-zA-z]+://[^s]* ou ^http://([w-] +.)+[ w-]+(/[w-./?%&=]*)?$
4 Numéro de téléphone portable : ^(13[0-9]|14[5|7 ]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])d{8}$
5 Numéros de téléphone ("XXX-XXXXXXX", "XXXX-XXXXXXXXX", "XXX-XXXXXXX", "XXX-XXXXXXXXX", "XXXXXXX" et "XXXXXXXXX") : ^((d{3,4 }-)|d{3.4 }-)?d{7,8}$
6 Numéro de téléphone national (0511-4405222, 021-87888822) : d{3}-d{8}|d{ 4}-d{7}
7 Numéro d'identification (15 chiffres, 18 chiffres) : ^d{15}|d{18}$
8 Numéro d'identification court (chiffres se terminant par lettre x) : ^ ([0-9]){7,18}(x|X)?$ ou ^d{8,18}|[0-9x]{8,18}|[0-9X]{ 8,18} ? $
9 Le compte est-il légal (commençant par une lettre, 5 à 16 octets autorisés, traits de soulignement alphanumériques autorisés) : ^[a-zA-Z][a-zA-Z0-9_ ]{4,15} $
10 Mot de passe (commençant par une lettre, d'une longueur comprise entre 6 et 18, ne peut contenir que des lettres, des chiffres et des traits de soulignement) : ^[a-zA-Z]w{5,17 }$
11 Mot de passe fort (doit contenir une combinaison de lettres majuscules et minuscules et de chiffres, ne peut pas utiliser de caractères spéciaux, la longueur est comprise entre 8 et 10) : ^(?=.*d)(?=.* [a-z])(? =.*[A-Z]).{8,10}$
12 Format de date : ^d{4}-d{1,2}-d{1,2}
13 12 mois d'une année (01~09 et 1~12) : ^(0?[1-9]|1[0-2])$
14 31 jours d'une mois (01~09 et 1~31) : ^((0?[1-9])|((1|2)[0-9])|30|31)$
15 Entrée d'argent format :
16 1. Il existe quatre formes de représentation monétaire que nous pouvons accepter : "10 000,00" et "10 000,00", et "10 000" et "10 000" sans "cents" : ^[1-9][0-9] *$
17 2. Cela signifie tout nombre qui ne commence pas par 0. Cependant, cela signifie aussi qu'un caractère "0" ne passe pas, on utilise donc la forme suivante : ^(0|[1 - 9][0-9]*)$
18 3. Un 0 ou un nombre qui ne commence pas par 0. On peut aussi autoriser un signe négatif au début : ^(0|-?[ 1-9 ][0-9]*)$
19 4. Cela signifie un 0 ou un nombre qui peut être négatif et ne commence pas par 0. Laissez l'utilisateur commencer par 0. Supprimez le signe négatif aussi, parce que l'argent ne peut pas être négatif. Ce que nous devons ajouter ci-dessous est la partie décimale possible : ^[0-9]+(.[0-9]+)?$
20 5. Doit être expliqué Le fait est qu'il doit y avoir au moins 1 chiffre après la virgule décimale, donc "10." n'est pas passé, mais "10" et "10.2" sont passés : ^[0-9]+(.[0- 9]{2 })?$
21 6. De cette façon, nous stipulons qu'il doit y avoir deux décimales après la virgule. Si vous pensez que c'est trop dur, vous pouvez faire ceci : ^[ 0-9]+(.[0-9]{1, 2})?$
22 7. Cela permet aux utilisateurs d'écrire une seule décimale. Ensuite, nous devrions considérer les virgules dans les nombres, nous pouvons le faire. ceci : ^[0-9]{1,3}( ,[0-9]{3})*(.[0-9]{1,2})?$
23 8.1 à 3 nombres, suivis d'une virgule + 3 chiffres, virgule Devient facultatif au lieu d'être obligatoire : ^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)( .[0-9]{1, 2})?$
24 Remarque : Ceci est le résultat final, n'oubliez pas que "+" peut être remplacé par "*" si vous pensez qu'il s'agit d'une chaîne vide est acceptable (étrange, pourquoi ?) Enfin, n'oubliez pas de supprimer la barre oblique inverse lorsque vous utilisez la fonction. Les erreurs courantes sont ici
25 fichier XML : ^([a-zA-Z]+-?) +[a-zA-Z0 -9]+\.[x| Caractères de section : [^x00-xff] (y compris les caractères chinois, peuvent être utilisés pour calculer la longueur de la chaîne (la longueur d'un caractère à deux octets compte comme 2, et le caractère ASCII compte pour 1))
28 Régulière pour les lignes vides Expression : ns*r (peut être utilisé pour supprimer des lignes vides)
29 Expression régulière pour les balises HTML : <(S*?)[^>]*>.*?1> | s*|s*$ ou (^s*)|(s*$) (peut être utilisé pour supprimer les caractères d'espacement en début et en fin de ligne (y compris les espaces, les tabulations, les sauts de formulaire, etc.), expressions très utiles)
31 Numéro QQ Tencent : [1-9][0-9]{4,} (Le numéro Tencent QQ commence à 10000)
32 Code postal de Chine : [1-9]d{5}(?!d) (le code postal de Chine est composé de 6 chiffres) 33 Adresse IP : d+.d+.d+.d+ (utile pour extraire l'adresse IP) 34 IP adresse : ((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5 ] |2[0-4]\d|[01]?\d?\d))
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!