O REGEX (ou expressões regulares) em Python é uma poderosa ferramenta para trabalhar com padrões de texto/string. Com o uso de expressões regulares, é possível buscar, substituir e manipular textos/strings de forma eficiente e precisa. Em Python, as expressões regulares são implementadas pelo módulo/biblioteca "re".
O módulo/biblioteca "re" contém várias funções para trabalhar com expressões regulares, incluindo a função "search", que pode ser usada para buscar padrões em texto, e a função "sub", que pode ser usada para substituir padrões em texto.
* span=(22, 28) - posição indexada de onde foi encontrado o padrão*
Alguns dos caracteres especiais que podem ser usados em expressões regulares em Python incluem:
"." (ponto): usado para corresponder a qualquer caractere, exceto uma nova linha
"^" (circunflexo): usado para corresponder ao início de uma linha
"$" (símbolo de dólar): usado para corresponder ao final de uma linha
"*" (asterisco): usado para corresponder a zero ou mais ocorrências do padrão anterior
"+" (sinal de adição): usado para corresponder a uma ou mais ocorrências do padrão anterior
"?" (ponto de interrogação): usado para corresponder a zero ou uma ocorrência do padrão anterior
"|" (barra vertical): usado para corresponder a uma das várias opções
[] (colchetes): usado para definir um conjunto de caracteres que podem corresponder
Alguns exemplos:
A função "compile" do módulo/biblioteca "re" do Python permite compilar uma expressão regular em um objeto de padrão de expressão regular, que pode ser armazenado e reutilizado posteriormente para buscar e manipular texto de maneira mais eficiente.
A função "compile" é geralmente usada para criar padrões complexos que precisam ser usados várias vezes em um programa. Ao compilar a expressão regular uma vez e armazená-la em um objeto de padrão, o Python pode economizar tempo e recursos ao executar a busca e manipulação de texto várias vezes.
A sintaxe básica da função "compile" é a seguinte:
Onde "pattern" é a expressão regular que deve ser compilada e "flags" é um conjunto opcional de sinalizadores que podem ser usados para modificar o comportamento do padrão.
Por exemplo, o seguinte código Python compila um padrão de expressão regular que corresponde a um endereço de e-mail válido:
Ao compilar o padrão de expressão regular uma vez e armazená-lo em "padrao_email", o Python pode executar a busca de texto de maneira mais eficiente, economizando tempo e recursos em comparação com a compilação do padrão em cada chamada da função de busca.
Até aqui, dei uma pequena introdução do uso do regex na linguagem ESTRUTURAL. Vale ressaltar que há outras diversas formas de usar e aplicar o regex.
Por fim, darei um último exemplo utilizando do regex em linguagem orientada a objeto (POO), pois é de extrema importância visualizar a importância deste módulo em nosso cotidiano.
Como podem ver, é utilizado do módulo/biblioteca "re" e da função "search" para validar um padrão, buscando uma sequência de um ou mais dígitos (algarismos entre 0-9) dentro da string novo_preco.
Aprendam Regex! rs
Regular Expression HOWTO — Python 3.11.2 documentation