grepl et grep
Dans leur forme la plus simple, les expressions régulières servent à vérifier si un motif est présent dans une chaîne de caractères ou dans un vecteur de chaînes. Pour ce faire, vous pouvez utiliser :
grepl(), qui retourneTRUElorsqu'un motif est trouvé dans la chaîne de caractères correspondante.grep(), qui retourne un vecteur des indices des chaînes de caractères qui contiennent le motif.
Ces deux fonctions ont besoin d'un argument pattern et d'un argument x, où pattern est l'expression régulière à faire correspondre et x est le vecteur de caractères dans lequel effectuer la recherche.
Dans cet exercice et les suivants, vous allez interroger et manipuler un vecteur de chaînes correspondant à des adresses courriel ! Le vecteur emails a été prédéfini, vous pouvez donc passer directement aux instructions !
Cette activité fait partie du cours
R intermédiaire
Instructions de l’exercice
- Utilisez
grepl()pour générer un vecteur logique indiquant si ces adresses courriel contiennent"edu". Affichez le résultat dans le Résultat. - Faites la même chose avec
grep(), mais cette fois enregistrez les indices résultants dans une variablehits. - Utilisez la variable
hitspour sélectionner, dans le vecteuremails, uniquement les adresses qui contiennent"edu".
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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