Introduzione alle espressioni regolari

Espressioni regolari in Python

Maria Eugenia Inzaugarat

Data Scientist

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • I caratteri normali corrispondono a se stessi (st)
Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • I metacaratteri rappresentano tipi di caratteri (\d, \s, \w) o quantità/idee ({3,10})
Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • I metacaratteri rappresentano tipi di caratteri (\d, \s, \w) o idee ({3,10})
Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • I metacaratteri rappresentano tipi di caratteri (\d, \s, \w) o idee ({3,10})
Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • I metacaratteri rappresentano tipi di caratteri (\d, \s, \w) o quantità/idee ({3,10})
Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • Pattern: sequenza di caratteri che mappa parole o punteggiatura
Espressioni regolari in Python

Cos'è un'espressione regolare?

REGular EXpression o regex:

Stringa con una combinazione di caratteri normali e metacaratteri speciali che descrive pattern per trovare testo o posizioni in un testo

  • Usi del pattern matching:

    • Trovare e sostituire testo
    • Validare stringhe
  • Molto potente e veloce

Espressioni regolari in Python

Il modulo re

import re
  • Trova tutte le occorrenze di un pattern:

re.findall(r"#movies", "Love #movies! I had fun yesterday going to the #movies")
['#movies', '#movies']
Espressioni regolari in Python

Il modulo re

import re
  • Dividi la stringa a ogni match:

re.split(r"!", "Nice Place to eat! I'll come back! Excellent meat!")
['Nice Place to eat', " I'll come back", ' Excellent meat', '']
Espressioni regolari in Python

Il modulo re

import re
  • Sostituisci uno o più match con una stringa:

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'
Espressioni regolari in Python

Metacaratteri supportati

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']
Espressioni regolari in Python

Metacaratteri supportati

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']
Espressioni regolari in Python

Metacaratteri supportati

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'
Espressioni regolari in Python

Ayo berlatih!

Espressioni regolari in Python

Preparing Video For Download...