Maison  >  Article  >  développement back-end  >  Expressions régulières couramment utilisées en php

Expressions régulières couramment utilisées en php

silencement
silencementavant
2020-01-30 22:30:154266parcourir

Expressions régulières couramment utilisées en php

Les expressions régulières sont souvent utilisées lors de la création de sites Web. Voici quelques explications et exemples pour votre référence et modification uniquement :

Numéros correspondants

"^d+$" //Entier non négatif (entier positif + 0)

"^[0-9]*[1-9][0-9] *$ "  //Entier positif

"^((-d+)|(0+))$"  //Entier non positif (entier négatif + 0)

"^-[0 - 9]*[1-9][0-9]*$" // Entier négatif

"^-?d+$" // Entier

"^d+(.d+) ? $"  //Nombre à virgule flottante non négatif (nombre à virgule flottante positif + 0)

"^(([0-9]+.[0-9]*[1-9][0-9 ]* )|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*) )$ " //Nombre à virgule flottante positif

"^((-d+(.d+)?)|(0+(.0+)?))$" //Nombre à virgule flottante non positif ( nombre à virgule flottante négatif + 0 )

"^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9 ]*[1-9 ][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$" // Virgule flottante négative nombre

"^(-?d+)(.d+)?$" // Le nombre à virgule flottante

correspond aux lettres

"^[A-Za-z]+ $" // Composé de 26 caractères anglais. Une chaîne de lettres

"^[A-Z]+$" // Une chaîne de 26 lettres anglaises majuscules

"^[a-z]+$" // Une chaîne de 26 lettres anglaises Une chaîne composée de lettres anglaises minuscules

"^[A-Za-z0-9]+$" // Une chaîne composée de chiffres et de 26 lettres anglaises

"^ w+$" // Une chaîne composée de chiffres, de 26 lettres anglaises ou de traits de soulignement

exemple de correspondance

"^[w-]+(.[w-]+)* @[ w-]+(.[w-]+)+$"   //adresse email

"^[a-zA-z]+://(w+(-w+)*)(. (w+ (-w+)*))*(?S*)?$"  //url

/^(d{2}|d{4})-((0([1 -9 ]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ / / an -Mois-Jour

/^((0([1-9]{1}))|(1[1|2]))/(( [0 -2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // mois/jour/année

"^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0 -9 ]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(] ?) $" //Émile

/^((+?[0-9]{2,4}-[0-9]{3,4}- )| ([0-9]{3,4}-))?([0-9]{7,8})(-[0-9]+)?$/ //Numéro de téléphone

"^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[ 0- 4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd| 2[ 0-4]d|25[0-5])$" //Adresse IP

Autre correspondance

Expression régulière correspondant aux caractères chinois : [u4e00-u9fa5]

Caractères correspondants à deux octets (y compris les caractères chinois) : [^x00-xff]

Expression régulière pour correspondre aux lignes vides : n[s| ]*r

Expression régulière pour correspondre aux balises HTML : /< (.*)>.*< 1="">|<(.*)>/

Expression régulière correspondant aux espaces de début et de fin Formule : (^s*)|(s*$)

Expression régulière correspondant aux adresses e-mail : w+([-+.]w+)*@w+([ -.]w+ )*.w+([-.]w+)*

URL correspondant à l'expression régulière : ^[a-zA-z]+:/ /(\w+(-\ w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$

Le compte correspondant est-il légal (à partir de avec une lettre, 5 à 16 octets autorisés, traits de soulignement alphanumériques autorisés) : ^[a-zA-Z][a-zA-Z0-9_]{4,15}$

Correspondre au numéro de téléphone national : (d{3}-|d{4}-)?(d{8}|d{7})?

Correspondre au numéro QQ de Tencent : ^[ 1-9]*[ 1-9][0-9]*$

métacaractères et leur comportement dans le contexte des expressions régulières :

marque le caractère suivant comme un caractère spécial, ou un caractère littéral, ou un référence arrière ou un caractère d'échappement octal.

^ correspond au début de la chaîne d'entrée. Si la propriété Multiline de l'objet RegExp est définie, ^ correspond également à la position après « n » ou « r ».

$ correspond à la fin de la chaîne d'entrée. Si la propriété Multiline de l'objet RegExp est définie, $ correspond également à la position avant « n » ou « r ».

* correspond à la sous-expression précédente zéro ou plusieurs fois.

+ correspond à la sous-expression précédente une ou plusieurs fois. + équivaut à {1,}.

 ? Correspond à la sous-expression précédente zéro ou une fois. ? Équivalent à {0,1}.

{n} n est un entier non négatif qui correspond à un certain nombre de n fois.

{n,} n est un entier non négatif qui correspond au moins n fois.

{n,m} m et n sont tous deux des entiers non négatifs, où n <= m. Faites correspondre au moins n fois et au plus m fois. Il ne peut y avoir d'espace entre la virgule et les deux nombres.

 ? Le modèle de correspondance est non gourmand lorsque ce caractère suit immédiatement l'un des autres qualificatifs (*, +, ?, {n}, {n,}, {n,m}). Le mode non gourmand correspond le moins possible à la chaîne recherchée, tandis que le mode gourmand par défaut correspond le plus possible à la chaîne recherchée.

. Correspond à n'importe quel caractère sauf "n". Pour faire correspondre n'importe quel caractère incluant « n », utilisez un modèle tel que « [.n] ».

 (motif) correspond au motif et obtient cette correspondance.

(?:pattern) correspond au modèle mais n'obtient pas le résultat correspondant, ce qui signifie qu'il s'agit d'une correspondance non obtenue et n'est pas stockée pour une utilisation ultérieure.

(?=pattern) recherche directe, faisant correspondre la chaîne de recherche au début de n'importe quel modèle de correspondance de chaîne. Il s'agit d'une correspondance sans récupération, c'est-à-dire qu'il n'est pas nécessaire de récupérer la correspondance pour une utilisation ultérieure.

(?!modèle) Recherche négative, opposée à (?=modèle)

x|y correspond à x ou y.

[xyz] jeu de caractères.

[^xyz] Jeu de caractères de valeur négative.

[a-z] plage de caractères, correspond à n'importe quel caractère dans la plage spécifiée.

[^a-z] Plage de caractères négative, correspond à tout caractère ne se trouvant pas dans la plage spécifiée.

b correspond à une limite de mot, qui fait référence à la position entre un mot et un espace.

B correspond aux limites des non-mots.

cx correspond au caractère de contrôle spécifié par x.

d correspond à un caractère numérique. Équivalent à [0-9].

D correspond à un caractère non numérique. Équivalent à [^0-9].

f correspond à un caractère de saut de page. Équivalent à x0c et cL.

n correspond à un caractère de nouvelle ligne. Équivalent à x0a et cJ.

r correspond à un caractère de retour chariot. Équivalent à x0d et cM.

s correspond à n'importe quel caractère d'espacement, y compris les espaces, les tabulations, les sauts de formulaire, etc. Équivalent à [fnrtv].

S correspond à tout caractère autre qu'un espace. Équivalent à [^ fnrtv].

t correspond à un caractère de tabulation. Équivalent à x09 et cI.

v correspond à un caractère de tabulation verticale. Équivalent à x0b et cK.

w correspond à n'importe quel caractère de mot, y compris un trait de soulignement. Équivalent à '[A-Za-z0-9_]'.

W correspond à n'importe quel caractère autre qu'un mot. Équivalent à '[^A-Za-z0-9_]'.

xn correspond à n, où n est la valeur d'échappement hexadécimale. La valeur d’échappement hexadécimale doit comporter exactement deux chiffres.

num correspond à num, où num est un entier positif. Une référence au match obtenu.

n identifie une valeur d'échappement octale ou une référence arrière. n est une référence arrière si n est précédé d'au moins n sous-expressions récupérées. Sinon, si n est un nombre octal (0-7), alors n est une valeur d'échappement octale.

nm identifie une valeur d'échappement octale ou une référence arrière. Si nm est précédé d'au moins nm sous-expressions récupérées, nm est une référence arrière. Si nm est précédé d'au moins n gets, alors n est une référence arrière suivie du littéral m. Si aucune des conditions précédentes n'est vraie et si n et m sont tous deux des chiffres octaux (0-7), nm correspondra à la valeur d'échappement octale nm.

nml Si n est un chiffre octal (0-3) et m et l sont tous deux des chiffres octaux (0-7), correspond à la valeur d'échappement octale nml.

un correspond à n, où n est un caractère Unicode représenté par quatre chiffres hexadécimaux.

Expression régulière correspondant aux caractères chinois : [u4e00-u9fa5]

Caractères correspondants à deux octets (y compris les caractères chinois) : [^x00-xff]

Régulier expression correspondant à des lignes vides : n[s| ]*r

Expression régulière correspondant aux balises HTML : /<(.*)> *|<(.* )>/

Expression régulière correspondant aux espaces de début et de fin : (^s*)|(s*$)

Expression régulière correspondant aux adresses e-mail : w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*

URL de correspondance d'expression régulière : http://([w-]+.)+[w-]+(/[w- ./?%&= ]*)?

Utilisez des expressions régulières pour limiter le contenu de saisie des zones de texte dans les formulaires Web :

Utilisez des expressions régulières La limite d'expression ne peut être saisie qu'en chinois : onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text') .replace(/[^u4E00- u9FA5]/g,''))"

Utilisez une expression régulière pour limiter la saisie de caractères pleine chasse : onkeyup="value=value .replace(/[ ^uFF00-uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,' '))"

Utilisez des expressions régulières pour limiter la saisie aux nombres : onkeyup="value=value.replace(/[^d]/g,'') " onbeforepaste="clipboardData.setData ('text',clipboardData.getData('text').replace(/[^d]/g,''))"

Utilisez des expressions régulières pour limiter les entrées aux chiffres et en anglais uniquement : onkeyup="value=value.replace(/[W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text' ).replace(/[ ^d]/g,''))"

Quelques exemples réguliers couramment utilisés

1. Non- entier négatif : ^d+$

2. Entier positif : ^[0-9]*[1-9][0-9]*$

3. entier :^((-d+)|(0+))$

4. Entier négatif : ^-[0-9]*[1-9][0. - 9]*$

5. Entier : ^-?d+$

6. numéro de point : ^d+(.d+)?$

7. Nombre à virgule flottante positif : ^((0-9)+.[0-9]*[1 -9][ 0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9] [0-9 ]*))$

8. Nombres à virgule flottante non positifs : ^((-d+.d+)?)|(0+(.0 +)?))$

9. Nombres à virgule flottante négatifs : ^(-((expression régulière de nombre à virgule flottante positive)))$

10. Chaîne anglaise : ^[A-Za-z]+$

11. Chaîne anglaise majuscule : ^[A-Z]+$

12. Chaîne minuscule anglaise : ^[a-z]+$

13. ^[A-Za-z0- 9]+$

14 Chaîne alphanumérique et soulignée : ^w+$

15. Adresse e-mail : ^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$

16, URL : ^[a-zA-Z]+://(w+(-w+)*)(.(w+(-w+)*))*(?s*)?$

ou : ^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~` @[]':+! ]*([^<>""])*$

17. 5}$

18. Chinois : ^[u0391-uFFE5]+$

19. ^(((d{2 ,3}))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6, 7}(-d{1 ,4})?$

20. Numéro de téléphone portable : ^(((d{2,3}))|(d{ 3}-))?13d{ 9}$

21 Caractères à deux octets (y compris les caractères chinois) : ^x00-xff

22. Faire correspondre les espaces de début et de fin : (^s*)|(s*$) (fonction de découpage comme vbscript)

23. Faire correspondre Balises HTML : <(. *)>.*< 1="">|<(.*)>

24. : n[s| ]* r

25. Extraire les liens réseau dans les informations : (h|H)(r|R)(e|E)(f| F) *= *(' |")?(w|\|/|.)+('|"| *|>)?

26. Extrait l'adresse email dans les informations : w+ ([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*

27. Extraire les informations Lien de l'image : (s|S)(r|R)(c|C) *= *('|")?(w|\|/|.)+('|"| *| >)?

28. Extrayez l'adresse IP dans les informations : (d+).(d+).(d+).(d+)

29. Extrayez le numéro de téléphone portable chinois dans les informations : (86)*0*13d{9}

30. Numéro de téléphone fixe chinois dans les informations : (( d{3,4})|d{3,4}-|s)?d{8}

31. Extrayez le numéro de téléphone chinois dans les informations (y compris le numéro de téléphone mobile et le téléphone fixe) : ((d{3,4})|d{3,4}-|s)?d{7,14}

32. Code postal d'extraction Chine dans les informations : [1-9]{1}(d+){5}

33. Extrayez le nombre à virgule flottante (c'est-à-dire décimal) dans l'information : ( -?d*).?d+

34. Extrayez n'importe quel nombre dans l'information : (-?d *)(.d+)?

35.IP : (d+).(d+).(d+).(d+)

36. Indicatif téléphonique : /^0d {2,3}$/

37. [1-9][0-9]*$

38. Numéro de compte (commençant par une lettre, autorisant 5 à 16 octets, autorisant les traits de soulignement alphanumériques) : ^[ a-zA-Z][a-zA-Z0-9_]{ 4,15}$

39 chinois, anglais, chiffres et souligné : ^[u4e00-. u9fa5_a-zA-Z0-9]+$

Ajouter

Expression régulière correspondant aux caractères chinois : [u4e00- u9fa5]

Correspond aux caractères à deux octets (y compris les caractères chinois) : [^x00-xff]

Régulier expression qui correspond aux lignes vides : n[s| ]* r

Expression régulière correspondant aux balises HTML : /<(.*)>.*< ">|<(.*) >/

Expression régulière correspondant aux espaces de début et de fin : (^s*)|(s*$)

Expression régulière correspondant à l'adresse IP : /(d+ (d+). ).(d+).(d+)/g //

Expression régulière correspondant aux adresses e-mail : w+([-+.]w+)*@w+ ([-. ]w+)*.w+([-.]w+)*

URL de correspondance d'expression régulière : http://(/[w- ]+.)+[w -]+(/[w- ./?%&=]*)?

instruction SQL : ^(select|drop|delete |create|update|insert) .*$

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer