Aan de slagGa gratis aan de slag

RegEx in Python

Regelgebaseerde informatie-extractie is handig voor veel NLP-taken. Bepaalde soorten entiteiten, zoals data of telefoonnummers, hebben duidelijke formaten die je met regels kunt herkennen zonder een model te trainen. In deze oefening ga je werken met het re-pakket voor RegEx. Het doel is om telefoonnummers te vinden in een gegeven text.

Het re-pakket is al voor je geïmporteerd. Je kunt \d gebruiken om tekenreekspatronen te matchen die staan voor een metateken dat elk cijfer van 0 tot en met 9 matcht.

Deze oefening maakt deel uit van de cursus

Natural Language Processing met spaCy

Cursus bekijken

Oefeninstructies

  • Definieer een patroon om telefoonnummers van de vorm (111)-111-1111 te matchen.
  • Zoek alle overeenkomende patronen met de methode re.finditer().
  • Print voor elke match de begin- en eindposities en het overeenkomende gedeelte van de gegeven text.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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[____:____])
Code bewerken en uitvoeren