Aan de slagBegin gratis

grepl & grep

In hun eenvoudigste vorm kun je reguliere expressies gebruiken om te controleren of een patroon voorkomt in een tekenreeks of in een vector met tekenreeksen. Hiervoor kun je gebruiken:

  • grepl(), dat TRUE teruggeeft wanneer een patroon wordt gevonden in de bijbehorende tekenreeks.
  • grep(), dat een vector met indexen teruggeeft van de tekenreeksen die het patroon bevatten.

Beide functies hebben een pattern- en een x-argument nodig, waarbij pattern de reguliere expressie is waar je op wilt matchen, en x de tekenvector is waarin gezocht wordt naar matches.

In deze en de volgende oefeningen ga je een tekenvector met e-mailadressen bevragen en bewerken! De vector emails is al vooraf gedefinieerd, dus je kunt meteen met de instructies aan de slag!

Deze oefening maakt deel uit van de cursus

R voor gevorderden

Bekijk cursus

Oefeninstructies

  • Gebruik grepl() om een logische vector te maken die aangeeft of deze e-mailadressen "edu" bevatten. Print het resultaat naar de output.
  • Doe hetzelfde met grep(), maar sla de resulterende indexen dit keer op in een variabele hits.
  • Gebruik de variabele hits om uit de vector emails alleen de e-mails te selecteren die "edu" bevatten.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# The emails vector has already been defined for you
emails <- c("[email protected]", "[email protected]", "[email protected]",
            "invalid.edu", "[email protected]", "[email protected]")

# Use grepl() to match for "edu"


# Use grep() to match for "edu", save result to hits


# Subset emails using hits
Code bewerken en uitvoeren