Kom igångKom igång gratis

grepl & grep (2)

Du kan använda cirkumflex, ^, och dollartecknet, $, för att matcha innehåll i början respektive slutet av en sträng. Det tar oss ett steg närmare ett korrekt mönster för att enbart matcha ".edu"-adresserna i vår lista. Men det finns mer att lägga till för att göra mönstret mer robust:

  • @, eftersom en giltig e-postadress måste innehålla ett snabel-a.
  • .*, som matchar vilket tecken som helst (.) noll eller fler gånger (*). Både punkten och asterisken är metatecken. Du kan använda dem för att matcha vilket tecken som helst mellan snabel-a och ".edu"-delen av en e-postadress.
  • \\.edu$, för att matcha ".edu"-delen av e-postadressen i slutet av strängen. \\-delen escapar punkten: det talar om för R att du vill använda . som ett vanligt tecken.

Den här övningen är en del av kursen

R för medelnivå

Visa kurs

Övningsinstruktioner

  • Använd grepl() med det mer avancerade reguljära uttrycket för att returnera en logisk vektor. Skriv ut resultatet direkt.
  • Gör något liknande med grep() för att skapa en vektor med index. Spara resultatet i variabeln hits.
  • Använd emails[hits] igen för att filtrera vektorn emails.

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 addresses more robustly


# Use grep() to match for .edu addresses more robustly, save result to hits


# Subset emails using hits
Redigera och kör kod