Compartilhar via


Criando uma expressão Regular

A a expressão regular descreve um ou mais seqüências de caracteres para corresponder ao pesquisar um corpo de texto. A expressão regular serve como o padrão de caracteres para comparar com o texto que está sendo pesquisado.

Expressões regulares são construídas muito como expressões aritméticas são criadas. Expressões de pequenas são combinadas usando uma variedade de metacaracteres e operadores para criar expressões maiores.

Os componentes de uma expressão regular podem ser caracteres individuais, conjuntos de caracteres, intervalos de caracteres ou opções entre caracteres. Componentes também podem ser qualquer combinação desses componentes.

Construir uma expressão Regular

Você pode construir uma expressão regular, colocando os vários componentes da expressão entre um par de delimitadores. Em JScript, os delimitadores são um par de caracteres de barra (/), conforme mostrado no exemplo a seguir.

/expression/

Exemplos de expressões regulares

A tabela a seguir contém exemplos de expressões regulares típicas.

Expressão regular

Descrição

/^\s*$/

Corresponde a uma linha em branco.

/\d{2}-\d{5}/

Corresponde a um número de identificação que consiste em dois dígitos, um hífen e um adicional de cinco dígitos.

/<\s*(\S+)(\s[^>]*)?>[\s\S]*<\s*\/\1\s*>/

Corresponde a uma marca HTML.

Caracteres comuns

A forma mais simples de uma expressão regular é um único caractere comum que é comparado com uma seqüência de caracteres pesquisada. Por exemplo, a expressão regular caractere único A corresponde à letra a, sempre que ela aparece na seqüência de caracteres pesquisada.

A seguir estão alguns exemplos de JScript expressões regulares caractere único.

/a/
/7/
/M/

Você pode combinar vários caracteres únicos para formar uma expressão maior. Por exemplo, a expressão /the/ corresponde a "a" a seguir pesquisados seqüências: "o", "lá", "outro" e "sobre o cão preguiçoso".

Nenhum operador de concatenação é necessária. Tudo o que é necessário é que você coloque um caractere após o outro.

Metacaracteres

Além dos caracteres comuns, uma expressão regular pode conter metacaracteres. Um exemplo de um metacaractere é \d, que corresponde a um caractere de dígito.

Consulte Sintaxe de expressão regular para obter mais informações.

Caracteres comuns consistem em todos os caracteres imprimíveis e não imprimíveis que não estão explicitamente designados como metacaracteres. Isso inclui todos os caracteres alfabéticos maiúsculos e minúsculos, todos os dígitos, todos os sinais de pontuação e alguns símbolos.

Qualquer caractere de correspondência.

O caractere ponto (.) corresponde a qualquer impressão única ou o caractere de não-imprimível em uma seqüência de caracteres, exceto o caractere de nova linha (\n). O /a.c/ a expressão regular corresponde a "aac", "abc", "acc", "adc", "a1c", "a2c", "a-c" e "uma c#".

Para corresponder a um ponto (.) está contido na seqüência de caracteres pesquisada, você pode preceder o período na expressão com um caractere de barra invertida (\). O /filename\.ext/ expressão corresponde a "filename. ext".

Listas de correspondência de caracteres

Você pode criar uma lista de correspondência de caracteres, colocando um ou mais caracteres individuais entre colchetes [].

Qualquer caractere incluído em uma expressão de colchete corresponde a um único caractere na posição na expressão regular, onde a expressão de colchete aparece. Por exemplo, o /Chapter [12345]/ expressão corresponde a "Capítulo 1", "Capítulo 2", "Capítulo 3", "Capítulo 4" e "Capítulo 5".

Para expressar os caracteres correspondentes usando um intervalo em vez dos próprios caracteres, você pode usar o caractere de hífen (-). O /Chapter [1-5]/ expressão é equivalente a /Chapter [12345]/.

Você pode encontrar todos os caracteres que não estão na lista ou intervalo, incluindo um caractere de interpolação (^) no início da lista. Por exemplo, o /[^aAeEiIoOuU]/ expressão corresponde a qualquer caractere não vogal.

Para obter mais informações, consulte Listas de correspondência de caracteres.

Quantificadores

Você pode usar quantificadores para especificar uma expressão regular, no qual um caractere ou um conjunto de caracteres é repetido um número específico de vezes.

Um quantificador se refere à expressão imediatamente anterior (esquerda), o quantificador.

Quantificadores são colocados entre chaves {} e incluem os valores numéricos para os limites inferior e superior de ocorrência. Por exemplo, c{1,2} corresponde a 1 ou 2 de ocorrências de a c de letra.

Quando apenas um número é especificado, ele é usado como o limite superior, a menos que ele é seguido por uma vírgula. Por exemplo, c{3} corresponde a exatamente 3 caracteres da letra c, e c{5,} corresponde a 5 ou mais ocorrências de c de letra.

Quantificadores de caractere único também estão disponíveis, como mostrado na tabela a seguir.

Quantificador

Quantificador explícita

Significado

*

{0,}

Coincide com o elemento anterior zero ou mais vezes.

+

{1,}

O elemento anterior coincide com uma ou mais vezes.

?

{0,1}

Coincide com o elemento anterior zero ou uma vez.

A seguir estão algumas expressões de exemplo juntamente com seqüências de pesquisa que correspondem a elas.

Expressão regular

Significado de quantificador

Matches

/Chapter [1-9][0-9]{0,}/ou

/Chapter [1-9][0-9]*/

Correspondências [0-9] zero ou mais vezes.

"Capítulo 1", "Capítulo 25", "Capítulo 401320"

/Chapter [0-9]{1,2}/

Correspondências [0-9] uma ou duas vezes.

"Chapter 0", "Capítulo 03", "Capítulo 1", "Capítulo 25", "Chapter 40"

/Chapter [1-9][0-9]{0,1}/ou

/Chapter [1-9][0-9]?/

Correspondências [0-9] zero ou uma hora.

"Capítulo 1", "Capítulo 25", "Chapter 40"

Para obter mais informações, consulte Quantificadores em JScript.

Linha e os limites das palavras

Âncoras permitem que você especificar que uma expressão regular deve aparecer no início ou no final da cadeia de caracteres pesquisada, ou o início ou final de uma linha ou uma palavra na seqüência de caracteres pesquisada, seja uma correspondência. Para obter mais informações, consulte Âncoras.

Especificando alternativas

O "|" caractere Especifica que as alternativas de dois ou mais representam uma correspondência. Por exemplo, o JScript a expressão regular /(Chapter|Section) [1-9]/ corresponde ao seguinte: "Capítulo 1", "Capítulo 9" e "Seção 2". Para obter mais informações, consulte Alternação e subexpressões.

Usando subcorrespondentes

Parênteses são usados em uma expressão regular para criar uma subexpressão. A submatch resultante pode ser recuperada pelo programa. Para obter mais informações, consulte Alternação e subexpressões.

Você pode consultar uma subexpressão de dentro de uma expressão regular e a partir uma seqüência de caracteres de substituição. Para obter mais informações, consulte Referências anteriores em JScript.

Consulte também

Conceitos

Programação de expressão regular

Sintaxe de expressão regular