Det ena eller det andra
Att söka efter ett enstaka ord är enkelt. Men att söka efter exakt två eller tre ord – det klarar inte en vanlig "Ctrl + F"-sökning. Med reguljära uttryck kan du definiera ett sökmönster som gör just det. Använd str_view() för att se vad ditt reguljära uttryck matchar.
När du kopplar ihop flera ord med pipe-operatorn | matchar du både det som står före pipe och det som står efter. Och du är inte begränsad till bara två alternativ – du kan ha tre alternativ kopplade med två pipe-tecken: Hello Anna|Berta|Colin.
Du kan även använda parenteser för att gruppera ord, till exempel Hello (Anna|Berta|Colin), vilket ger ett annat resultat än mönstret ovan. Prova båda varianterna och jämför resultaten.
Den här övningen är en del av kursen
Reguljära uttryck på mellannivå i R
Övningsinstruktioner
- Skapa ett mönster som söker efter filmer som börjar med
"Finding "följt av orden"Nemo","Harmony"eller"Dory". - Skapa sedan samma mönster men omge de tre alternativen med parenteser
()för att jämföra resultaten. - Välj det av de två mönstren som matchar de fullständiga filmtitlarna
"Finding Nemo","Finding Harmony"och"Finding Dory"och skicka det till det tredje anropet avstr_match().
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Append the three options: Match Nemo, Harmony or Dory
str_view(lines, pattern = "Finding ___")
# Wrap the three options in parentheses and compare the results
str_view(lines, pattern = "Finding ___")
# Use the pattern from above that matched the whole movie names
str_match(lines, pattern = "Finding ___")