Als je niet weet waar je naar zoekt
Tot nu toe heb je str_detect() gebruikt, die TRUE teruggeeft als het patroon matcht en anders FALSE. Maar reguliere expressies zijn ook heel geschikt om de gezochte term uit een grotere hoeveelheid tekst te halen. Daarvoor kun je de functie str_match() gebruiken.
Het volgende speciale teken dat je leert kennen is de punt: ".". De punt matcht elk teken; het is een soort wildcard. Als je bijvoorbeeld zoekt naar "...", vind je drie tekens — letters, cijfers of zelfs spaties.
Dat is erg handig, behalve als je juist naar een echte punt "." moet zoeken. In dat geval: escape de punt met twee backslashes: "\\."
Deze oefening maakt deel uit van de cursus
Gevorderde reguliere expressies in R
Oefeninstructies
- Match niet alleen
Saw 4, maar ook de andere vervolgen. - Match de eerste vier tekens van alle filmtitels die beginnen met
"K". - Detecteer de film die eindigt met een echte punt
".".
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Here's an example pattern that will find the movie Saw 4
str_match(movie_titles, pattern = "Saw 4")
# Match all sequels of the movie "Saw"
str_match(movie_titles, pattern = "___")
# Match the letter K and three arbitrary characters
str_match(movie_titles, pattern = "^K___")
# Detect whether the movie titles end with a full stop
str_detect(movie_titles, pattern = "___$")