Maison >interface Web >js tutoriel >Explication détaillée de l'utilisation des sous-expressions dans les expressions régulières

Explication détaillée de l'utilisation des sous-expressions dans les expressions régulières

php中世界最好的语言
php中世界最好的语言original
2018-03-30 09:39:532802parcourir

Cette fois, je vous apporte une explication détaillée de l'utilisation des sousexpressions dans les expressions régulières. Quelles sont les précautions lors de l'utilisation de sous-expressions dans les expressions régulières. Voici des cas pratiques. jetez un oeil.

Remarque : dans tous les exemples, le résultat de la correspondance expression régulière est contenu entre [et] dans le texte source. Certains exemples seront implémentés en utilisant Java s'il s'agit d'une expression régulière. lui-même L'utilisation de la formule sera expliquée à l'endroit correspondant. Tous les exemples Java sont testés sous JDK1.6.0_13.

1. Introduction du problème

Tout d'abord, regardons un exemple Bien que certaines expressions comme Windows 2000 soient composées de plusieurs mots, elles forment en fait un tout. . Dans la page HTML, vous pouvez utiliser un espace insécable pour le faire apparaître sur une seule ligne dans le navigateur. Faites maintenant correspondre plusieurs de ces espaces :

Texte :Votre système d'exploitation est Windows 2000.

Expression régulière : nbsp;{2,}

Résultat : Votre système d'exploitation est Windows 2000.

Analyse : Le modèle utilisé ici veut faire correspondre 2 espaces non-nouvelle ligne ou plus, mais comme le montrent les résultats, rien ne correspond, car le modèle nbsp;{2,} ne peut correspondre qu'à quelque chose comme nbsp;;;; Texte commençant par nbsp et contenant au moins 2 points-virgules consécutifs.

Parce que la correspondance répétée mentionnée précédemment est constituée de plusieurs répétitions du caractère immédiatement avant le métacaractère correspondant répété, mais si nous voulons faire correspondre une chaîne plusieurs fois, et que faire ?

2. Sous-expression

De ce qui précède, nous dérivons la sous-expression. Une sous-expression fait partie d'une expression plus large. Le but de diviser une expression en plusieurs sous-expressions est d'utiliser ces sous-expressions comme élément indépendant. Les sous-expressions doivent être entourées de (et). Par conséquent, l'expression régulière de l'exemple précédent doit être écrite sous la forme (nbsp;){2,}.

Regardons une expression régulière qui correspond aux années valides :

Texte : 1988-11-13

Expression régulière : (19 | 20)d{2}

Résultat :[1988]-11-13

Analyse : Dans cet exemple, dans afin d'exclure Pour les années sans signification, limitez les deux premiers chiffres de l'année à 19 ou 20. | est l'opérateur OU dans les expressions régulières. Ici, 19|20 doit être mis dans une sous-expression, c'est-à-dire (19|20), sinon il ne peut correspondre qu'aux années commençant par 20,

3. Imbrication des sous-expressions

Les sous-expressions permettent l'imbrication et plusieurs niveaux d'imbrication sont autorisés en théorie.

Dans l'expression ((A)(B(C))), il y a les sous-expressions suivantes :

1 ((A)(B(C)))

2 (A)

3 (B(C))

4 (C )

Il y en a 4 au total, et le 0ème représente toujours l'expression entière. Dans les références suivantes, nous expliquerons comment faire référence aux sous-expressions via n (n est le numéro de la sous-expression).

Pour des exemples de sous-expressions imbriquées, consultez plus tard l'expression régulière correspondant aux adresses IPV4.

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 aux autres articles connexes sur le site Web chinois de php. !

Lecture recommandée :

Utiliser php et js pour implémenter une correspondance régulière de mots de passe entre chiffres et lettres

Régulier dans JQ Verify que la méthode ne peut pas contenir du chinois

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