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.
Teste seus conhecimentos