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

Usando expressões regulares em Perl

m /mulher /; print $ availableString; O padrão para comparação é o "homem". O primeiro sub string a ser procurado é o "homem"; a segunda sub string a ser procurado ainda é "homem". Não g modificador foi usado. A saída é: eu sou uma mulher. Tu és um homem. Sem o modificador global, correspondência e /ou substituição afetam sempre a primeira ocorrência. O segundo homem na cadeia de caracteres disponíveis não foi substituído. Com a (g) modificador global de todas as sub strings casadas são substituídos. O código a seguir ilustra isso: use strict; my $ availableString = ".

Eu sou um homem Ele é um homem."; $ availableString = ~ s /homem /mulher /g; print $ availableString; A saída é: eu sou uma mulher. Ele é uma mulher. Na saída, todas as instâncias da palavra "homem" foi substituída por "mulher"; graças ao g modificador. Variáveis ​​internas, US $ 1, US $ 2 ... $ 9 Aqui, queremos ver os valores das variáveis ​​internas, US $ 1, $ 2, etc tomar após a substituição. O código a seguir ilustra isso: use strict; my $ availableString = ". Eu sou um homem Você é um homem.

"; $ availableString = ~ s /(homem) /Mulher /; print "\\ $ 1 é:", $ 1, "\\ n"; A saída é: $ 1 é: homem Há um grupo (homem) no padrão de correspondência. Isto corresponde a $ 1. Após a substituição, US $ 1 é "homem" e não "mulher". Então, depois de procurar e substituir, a variável interna mantém o que está combinado e não o que é substituído. Eu não ter considerado o caso com o g modificador. A operação de divisão Há um operador chamado de operador Split. A sintaxe é: separação /padrão /, string O operador de divisão divide uma string em uma lista de sub strings e retorna a lista.

O padrão é o exemplo separador uma vírgula. O separador não faz parte da lista retornada. Considere a seguinte seqüência de caracteres disponíveis: $ availableString = "um dois três"; Se sabemos que o padrão regex para identificar espaço entre as palavras, então podemos dividir essa string em uma lista composta pelas palavras, "um", "dois" e "três". Esta lista pode ser um array. \\ É o caractere de espaço. \\ + Irá corresponder a um espaço de uma ou mais vezes. A regex para separar as palavras acima é /\\ + /Assumimos que o espaço pode ser criado por bater a barra de espaço mais de uma vez.

O código seguinte ilustra o uso do operador com o padrão de divisão acima. use strict; my $ availableString = "um dois três"; meuswords = split /\\ + /, $ availableString; imprimir "primeiro elemento é:", $ words [0], "\\ n"; imprimir "s

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