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.