Operadores de Expressões Regulares

Operadores de Expressões Regulares. Expressões regulares podem ser combinadas com caracteres chamados de operadores de expressões regulares ou metacaracteres, apresentados a seguir.

Operadores de Expressões Regulares

É usado para suprimir o significado especial de um caracter quando encontrado. Por exemplo: $, corresponde ao caracter $

Corresponde ao início de uma string. Por exemplo: ^@chapter, corresponde a uma string que começa com ‘@chapter’.

$

É similar a ^, mas corresponde ao fim de uma string. Por exemplo: p$, corresponde a um registro que termina do ‘p’.

.

O ponto corresponde a um único caracter, incluindo newline. Por exemplo: .P, corresponde a qualquer caracter seguido por P em uma string.

[..]

Esta é a chamada lista de caracteres. Corresponde aos caracteres que estão entre [ e ]. Por exemplo: [MVX], corresponde a qualquer um dos caracteres ‘M’, ‘V ou ‘X’ em uma string. Um intervalo é indicado por um hífen (exemplo: [0-9]). Classe de caracter é uma notação especial para descrição de listas de caracteres que possuem um atributo específico. Uma classe de caracter consiste de: [: :]. Algumas classes de caracteres são:

[:alnum:] caracteres alfanuméricos

[:alpha:] caracteres alfabéticos

[:blank:] espaço e tab

[:digit:] caracteres numéricos

[:cntrl:] caracteres de controle

[:print:] caracteres que podem ser impressos(- caracteres de controle)

[:punct:] caracteres de pontuação

Uma classe de equivalência é um nome para uma lista de caracteres que são equivalentes, que deve estar entre [= e =]. Por exemplo: e pode ser usado para representar e, é ou è. Neste caso, [[=e]] é uma expressão regular que corresponde a qualquer um destes caracteres (e,é,è).

[^..]

Corresponde a qualquer caracter exceto os listados. Por exemplo: [^0-9] corresponder a qualquer caracter que não é um dígito.

É um operador usado para especificar alternativas. Por exemplo: ^P [0-9] corresponde a qualquer string que começa com P ou contém um dígito.

(..)

São usados para agrupar expressões regulares, assim como aritméticas.

*

Este símbolo significa que a expressão regular precedente pode ser repetida quantas vezes for necessário. Por exemplo: ph* corresponde a um p seguido de vários h.

+

É similar a *, a expressão precedente deve aparecer pelo menos uma vez. Isto significa que wh+y corresponde a why e whhy, mas não wy.

?

É similar a *, mas a expressão precedente deve aparecer uma ou nenhuma vez. Por exemplo: fe?d corresponde a fed e fd.

{n} {n,} {n,m}

Um ou dois números entre { e } denota uma expressão de intervalo. Por exemplo: wh{3}y corresponde a whhhy, mas não a why ou whhhhy; wh{3,5}y corresponde somente a whhhy, ou whhhhy ou whhhhhy; wh(2,}y corresponde a whhy ou whhhy e assim por diante.