grepl & grep
I sin enklaste form kan reguljära uttryck användas för att kontrollera om ett mönster finns i en teckensträng eller en vektor av teckensträngar. För det ändamålet kan du använda:
grepl(), som returnerarTRUEnär ett mönster hittas i motsvarande teckensträng.grep(), som returnerar en vektor med index för de teckensträngar som innehåller mönstret.
Båda funktionerna kräver argumenten pattern och x, där pattern är det reguljära uttryck du vill matcha och x är den teckenvektorn som sökningen ska utföras i.
I den här och efterföljande övningar kommer du att söka i och bearbeta en teckenvektor med e-postadresser! Vektorn emails är fördefinierad, så du kan gå direkt till instruktionerna.
Den här övningen är en del av kursen
R för medelnivå
Övningsinstruktioner
- Använd
grepl()för att skapa en vektor av logiska värden som anger om e-postadresserna innehåller"edu". Skriv ut resultatet. - Gör samma sak med
grep(), men spara den här gången de resulterande indexen i variabelnhits. - Använd variabeln
hitsför att välja ut enbart de e-postadresser i vektornemailssom innehåller"edu".
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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