*   >> Leitura Educação Artigos >> science >> programação

Mais Expressões Regulares em Perl

a a Internet deve estar em letras maiúsculas?) /Nós (i?) viu o uso do modificador para X incluem um comentário em uma expressão regular na parte VI. Usando a tag "(? #COMMENT)" É bom quando seu regex e os comentários estão em uma linha. Se você quer que seu regex e comenta-se em mais de uma linha, então você deve usar o x modificador e escapar de todos os espaços em branco, como se segue: $ availableString = ~ /o \\ I # a primeira parte dos nternet regex # I para o Internet deve ser em maiúsculas /x O código a seguir ilustra isso: use strict; my $ availableString = "Usar a Internet.

"; if ($ availableString = ~ /o \\ I # a primeira parte dos nternet regex # I para Internet deve ser em maiúsculas /x) {print "Matched \\ n"; } Else {print "Not Matched \\ n"; } Com o modificador x, # começa um comentário. Se você não estiver usando o modificador x, note que o "(? #COMMENT)" Tag não podem ser aninhadas, Você não pode ter "(? #COMMENT (? # Comment))" em uma regex. Incorporação modificadores Você pode embutir modificadores na regex (dentro do padrão). Vou usar o modificador de caso-less, i para ilustrar isso. Lembre-se, o modificador de caso-less faz a correspondência insensível.

A excepção a isto é quando o modificador é, em um sub-padrão (ver abaixo). Um modificador é incorporado colocando-nos personagens, (?), Logo após o '?' placa. Considere a seqüência de caracteres disponíveis, "XYZ" e do regex, /(? I) xyz /Observe o conjunto de caracteres "(? I)" que tem o modificador i. A regex acima iria coincidir com todo o assunto em epígrafe. A expressão a seguir produz um jogo: "XYZ" = ~ /xyz /Considere o seguinte regex (i?): (I) /xy z /Aqui, o modificador foi colocado imediatamente antes do último caractere, 'z'. O efeito é o mesmo que antes.

Não importa onde você coloca o modificador. Toda a regex é afetada independente de onde você coloca o modificador. Então /(? I) xyz /, /xy (? I) z /e /xyz /i significam a mesma coisa. Grupos de não captura Um grupo é o texto entre parênteses no regex. Por padrão, qualquer texto é capturado em uma variável ou lista no lado esquerdo do operador = ~. Considere o seguinte código: use strict; meuarr = ("Este é um e que é dois." = ~ /(one).*(two)/); print $ arr [0], "\\ n"; print $ arr [1], "\\ n"; A é a saída do código acima: um, dois, a saída consiste nas palavras, "um" e "dois".

Estes são elementos capturados e armazenados na matriz,arr. Você não pode querer capturar cada grupo. Se você não deseja capturar um grupo, preceder o cont

Page   <<  [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Leitura Educação Artigos,https://artigos.nmjjxx.com All rights reserved.