Introdução a expressões regulares

Expressões regulares em Python

Maria Eugenia Inzaugarat

Data Scientist

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Caracteres normais correspondem a si mesmos (st)
Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Metacaracteres representam tipos de caracteres (\d, \s, \w) ou quantidades/ideias ({3,10})
Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Metacaracteres representam tipos de caracteres (\d, \s, \w) ou quantidades/ideias ({3,10})
Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Metacaracteres representam tipos de caracteres (\d, \s, \w) ou quantidades/ideias ({3,10})
Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Metacaracteres representam tipos de caracteres (\d, \s, \w) ou quantidades/ideias ({3,10})
Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Padrão: sequência de caracteres que mapeia palavras ou pontuação
Expressões regulares em Python

O que é uma expressão regular?

EXPRESSão REGular (regex):

Cadeia com combinação de caracteres normais e metacaracteres especiais que descreve padrões para achar textos ou posições no texto

  • Usos de correspondência de padrões:

    • Buscar e substituir texto
    • Validar strings
  • Muito poderosa e rápida

Expressões regulares em Python

O módulo re

import re
  • Encontrar todas as ocorrências de um padrão:

re.findall(r"#movies", "Love #movies! I had fun yesterday going to the #movies")
['#movies', '#movies']
Expressões regulares em Python

O módulo re

import re
  • Dividir a string a cada correspondência:

re.split(r"!", "Nice Place to eat! I'll come back! Excellent meat!")
['Nice Place to eat', " I'll come back", ' Excellent meat', '']
Expressões regulares em Python

O módulo re

import re
  • Substituir uma ou várias correspondências por uma string:

re.sub(r"yellow", "nice", "I have a yellow car and a yellow house in a yellow neighborhood")
'I have a nice car and a nice house in a nice neighborhood'
Expressões regulares em Python

Metacaracteres suportados

re.findall(r"User\d", "The winners are: User9, UserN, User8")
['User9', 'User8']

re.findall(r"User\D", "The winners are: User9, UserN, User8")
['UserN']
Expressões regulares em Python

Metacaracteres suportados

re.findall(r"User\w", "The winners are: User9, UserN, User8")
['User9', 'UserN', 'User8']

re.findall(r"\W\d", "This skirt is on sale, only $5 today!")
['$5']
Expressões regulares em Python

Metacaracteres suportados

re.findall(r"Data\sScience", "I enjoy learning Data Science")
['Data Science']

re.sub(r"ice\Scream", "ice cream", "I really like ice-cream")
'I really like ice cream'
Expressões regulares em Python

Vamos praticar!

Expressões regulares em Python

Preparing Video For Download...