RegEx în Python
Extragerea de informații bazată pe reguli este utilă în multe sarcini de NLP. Anumite tipuri de entități, cum ar fi datele calendaristice sau numerele de telefon, au formate distincte care pot fi recunoscute printr-un set de reguli, fără a fi nevoie să antrenezi vreun model. În acest exercițiu vei exersa utilizarea pachetului re pentru RegEx. Scopul este să găsești numerele de telefon dintr-un text dat.
Pachetul re este deja importat. Poți folosi \d pentru a potrivi tipare de șiruri de caractere reprezentative pentru un metacaracter care identifică orice cifră de la 0 la 9.
Acest exercițiu face parte din cursul
Procesarea limbajului natural cu spaCy
Instrucțiuni pentru exercițiu
- Definește un pattern care să identifice numere de telefon de forma (111)-111-1111.
- Găsește toate tipărelele potrivite folosind metoda
re.finditer(). - Pentru fiecare potrivire, afișează caracterele de început și de sfârșit, precum și secțiunea corespunzătoare din
text.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
text = "Our phone number is (425)-123-4567."
# Define a pattern to match phone numbers
pattern = r"\((____){____}\)-(____){____}-(____){____}"
# Find all the matching patterns in the text
phones = re.____(pattern, text)
# Print start and end characters and matching section of the text
for match in phones:
start_char = match.____
end_char = match.____
print("Start character: ", ____, "| End character: ", ____, "| Matching text: ", text[____:____])