grepl & grep
Dans leur forme la plus élémentaire, les expressions régulières peuvent être utilisées pour vérifier si un motif existe dans une chaîne de caractères ou un vecteur de chaînes de caractères. À cette fin, vous pouvez utiliser :
grepl()
qui renvoieTRUE
lorsqu'un motif est trouvé dans la chaîne de caractères correspondante.grep()
qui renvoie un vecteur d'indices des chaînes de caractères contenant le motif.
Les deux fonctions ont besoin d'un argument pattern
et d'un argument x
, où pattern
est l'expression régulière que vous souhaitez faire correspondre, et l'argument x
est le vecteur de caractères à partir duquel les correspondances doivent être recherchées.
Dans cet exercice et les suivants, vous allez interroger et manipuler un vecteur de caractères d'adresses électroniques ! Le vecteur emails
a été prédéfini afin que vous puissiez commencer à suivre les instructions immédiatement !
Cet exercice fait partie du cours
Intermédiaire R
Instructions
- Utilisez
grepl()
pour générer un vecteur de logiques qui indique si ces adresses électroniques contiennent"edu"
. Imprimez le résultat sur la sortie. - Faites la même chose avec
grep()
mais cette fois-ci, enregistrez les index résultants dans une variablehits
. - Utilisez la variable
hits
pour sélectionner dans le vecteuremails
uniquement les courriels qui contiennent"edu"
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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