Expressão regular

Uma expressão regular (ou "regex") é um padrão de pesquisa usado para localizar um ou mais caracteres dentro de uma string. Ela pode localizar caracteres específicos, curingas e intervalos de caracteres. As expressões regulares foram usadas originalmente por utilitários do Unix, como vi e grep. No entanto, agora elas são compatíveis com muitos aplicativos de edição de código e processadores de texto em várias plataformas. As expressões regulares também podem ser usadas na maioria das principais linguagens de programação.

Uma expressão regular pode ser tão simples quanto uma string básica, como "app". A regex "app" localizaria strings contendo as palavras "apps", "applications" e "inapplicable". Uma expressão regular também pode conter caracteres de âncora ("^" e "$"), usados para especificar o início e o fim de uma linha, respectivamente. Portanto, a regex "^apps" localizaria a string "apps are great," mas não localizaria a string "I like apps."

As expressões regulares podem incluir hífens, usados para localizar um intervalo de caracteres, como todas as letras minúsculas. Por exemplo, a regex "[a-z]" localizaria "apps", mas não localizaria as strings "Apps" ou "123". A regex "[A-Za-z]" localizaria "Apps" e "[0-9]" localizaria "123". Um ponto, que é o caractere curinga padrão nas expressões regulares, pode ser usado para localizar qualquer caractere (exceto um caractere de fim de linha). Um ponto seguido por um asterisco (.*) localiza zero ou mais ocorrências, enquanto um ponto seguido por um sinal de mais (.+) localiza uma ou mais ocorrências.

Então, o que acontece se você precisar localizar uma string contendo um hífen, asterisco, sinal de mais ou caractere de âncora? Esses caracteres podem ser incluídos em um padrão de expressão regular ao "escapá-los" com uma barra invertida ("\"). Por exemplo, para pesquisar "$0.99", a regex seria semelhante a "\$0\.99". As barras invertidas também são usadas para pesquisar caracteres não imprimíveis. Por exemplo, "\r" localiza um retorno de carro, "\n" localiza uma nova linha e "\t" localiza um caractere de tabulação.

Embora não seja necessário muito esforço para criar uma expressão regular básica, escrever uma regex avançada não é uma tarefa fácil. Mesmo os melhores programadores raramente acertam expressões regulares complexas na primeira tentativa. Quando usadas corretamente, no entanto, as expressões regulares são uma ferramenta poderosa para pesquisar, localizar e substituir textos específicos.

Atualizado August 19, 2013 por Per C.

quizTeste seus conhecimentos

What does it mean to concatenate two text strings?

A
To join them together
0%
B
To compare their length
0%
C
To identify common characters
0%
D
To determine whether they are identical
0%
Correct! Incorrect!     View the Concatenation definition.
More Quizzes →

O dicionário de informática Tech Terms

A definição de Expressão regular nesta página é uma definição original escrita pelos autores do TechTerms.com. Se você quiser fazer referência a esta página ou citar esta definição, use a barra de citação verde logo abaixo da definição.

Nosso objetivo é explicar a terminologia de informática de um jeito fácil de entender. Buscamos precisão e clareza em cada definição que publicamos. Se você tiver comentários sobre esta definição ou quiser sugerir um novo termo técnico, entre em contato.

A newsletter do Tech Terms

Amplie seus conhecimentos técnicos com nossa newsletter diária ou semanal! Assine hoje e receba novos termos e quizzes na sua caixa de entrada.

Assine a newsletter gratuita do TechTerms

Com que frequência você gostaria de receber um e-mail?

Você pode cancelar a assinatura ou alterar a frequência a qualquer momento usando os links disponíveis em cada e-mail. Dúvidas? Entre em contato.

Observação: a newsletter é enviada em inglês.