RegEx i Python
Regelbaserad informationsutvinning är användbar i många NLP-uppgifter. Vissa typer av entiteter, till exempel datum eller telefonnummer, har distinkta format som kan kännas igen med hjälp av regler – utan att behöva träna någon modell. I den här övningen får du öva på att använda paketet re för RegEx. Målet är att hitta telefonnummer i en given text.
Paketet re är redan importerat. Du kan använda \d för att matcha strängmönster som representerar ett metategn som matchar valfri siffra från 0 till 9.
Den här övningen är en del av kursen
Naturlig språkbehandling med spaCy
Övningsinstruktioner
- Definiera ett mönster för att matcha telefonnummer på formen (111)-111-1111.
- Hitta alla matchande mönster med metoden
re.finditer(). - Skriv ut start- och slutposition samt den matchande delen av den givna
texten för varje träff.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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[____:____])