Match alle capture-groepen
In deze oefening werk je met een tekstbestand top_10 waarin filmtitels en hun rang staan. In deze meerregelige tekst wordt \\n gebruikt om een nieuwe regel te beginnen. Je gebruikt de functie str_split() om het tekstbestand in meerdere regels te splitsen.
De nieuw gemaakte matrix met één rij, top_10_lines, bevat vervolgens tien regels met hetzelfde patroon: de rang van de film, gevolgd door een punt en een spatie, en daarna de filmtitel zelf. Met de functie str_match() en twee capture-groepen () kun je deze twee stukjes informatie uit platte tekst halen en omzetten naar een tabelvorm.
Deze oefening maakt deel uit van de cursus
Gevorderde reguliere expressies in R
Oefeninstructies
- Gebruik de functie
str_split()om de tekst in regels te splitsen en laat een karaktermatrix teruggeven doorsimplifyin te schakelen. - Maak jezelf vertrouwd met de structuur van een regel. Die bevat de rang en de titel van een film.
- Extraheer de rang en de titel van een film door capture-groepen te gebruiken in de functie
str_match().
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Split the input by line break and enable simplify
top_10_lines <- str_split(
top_10,
pattern = "___",
simplify = ___
)
# Inspect the first three lines and analyze their form
___[1:3]
# Add to the pattern two capturing groups that match rank and title
str_match(
top_10_lines,
pattern = "___\\. ___"
)