*   >> Lecture Éducation Articles >> science >> la programmation

Construire une expression régulière dans Perl

produisent pas un match. $ availableString = ~ /homme assis /x Ceci est parce que dans l'expression régulière, les mono-espaces entre «homme» et «assis» et «assis» et «bas» ne sont pas reconnus, avec la présence du modificateur x. Si vous supprimez ces espaces correspondants dans la chaîne disponible, vous aurez un match, avec le modificateur x. La chaîne disponible suivante produira un match avec l'expression rationnelle ci-dessus: $ availableString = "Je suis un mansittingdown.

"; Si vous voulez la chaîne disponible original et regex pour correspondre, alors vous devez échapper aux espaces dans l'expression régulière. L'expression suivante produit un match avec la chaîne disponible originale: $ availableString = ~ /man \\ \\ séance bas /x Un échappé espace unique est "\\". Parlons maintenant de l'espace blanc dans une classe de caractères. Notez que les blancs est en fait [\\ \\ t \\ r \\ n \\ f], et pas seulement "\\". Cependant, continuons notre illustration en utilisant "\\".

Nous utilisons la même chaîne disponible, qui est: $ availableString =; "Je suis un homme assis." Si nous voulons correspondre à l'espace en face de séance, suivi par "assis", avec le modificateur x, alors notre regex pourrait être; /[] Assis /x Notez que les espaces dans la classe de caractères n'a pas été échappé. Autrement dit, avec le modificateur x, les espaces à l'intérieur d'une classe de personnage est pas échappé, tandis que les espaces en dehors de la classe de personnage est échappé.

L'expression suivante produit un match: $ availableString = ~ /[] assis /x x Avec le modificateur, le texte entre le caractère # et un caractère implicite ou explicite saut de ligne est ignoré. Un caractère de nouvelle ligne implicite est réalisé en appuyant sur la touche Entrée lorsque vous tapez. Un caractère explicite nouvelle ligne est réalisé en tapant le caractère \\ n. Considérons le code suivant: use strict; my $ availableString = "Je suis un homme assis.

"; if ($ availableString = ~ /man \\ #COMMENT va ici assis /x) {print "assortie \\ n"; } Else {print "ne correspond pas \\ n"; } La chaîne est disponible: $ availableString =; "Je suis un homme assis." L'expression rationnelle est /man \\ #COMMENT va ici assis /x noter la présence du caractère # et le caractère de nouvelle ligne implicite, obtenu après le mot, «ici» en appuyant sur la touche Entrée du clavier. Un match est produite. La chaîne de sous qui est réellement adapté est "homme assis". Dans le code suivant, le caractère de

Page   <<  [1] [2] [3] [4] [5] >>
Copyright © 2008 - 2016 Lecture Éducation Articles,https://lecture.nmjjxx.com All rights reserved.