Compléter le mot correspondant en utilisant grepl dans R
Considérons l'exemple suivant:
> testLines <- c("I don't want to match this","This is what I want to match")
> grepl('is',testLines)
> [1] TRUE TRUE
Ce que je veux, cependant, est seulement " est " quand il est seul comme un seul mot. De lire un peu de documentation perl, il semble que la façon de le faire est avec \b, un point d'ancrage qui peuvent être utilisés pour identifier ce qui vient avant et après la formulation, c'est à dire \parole\b correspond 'mot', mais pas 'épée'. J'ai donc essayé l'exemple suivant, avec l'utilisation de la syntaxe de Perl la valeur 'TRUE':
> grepl('\bis\b',testLines,perl=TRUE)
> [1] FALSE FALSE
La sortie, je suis à la recherche de est FALSE TRUE
.
source d'informationauteur Aaron
Vous devez vous connecter pour publier un commentaire.
"\<" est une autre séquence d'échappement pour le début d'un mot, et "\>" c'est la fin.
Dans la R des chaînes vous avez besoin de doubler les barres obliques inverses, donc:
Noter que cela correspond à "l'est!" mais pas "iso".
vous avez besoin de double-échappement pour passer échapper à la regex:
Très simpliste, match sur un espace:
Il y a un ensemble beaucoup plus que cela pour les expressions régulières, mais essentiellement, le modèle doit être plus précis. Ce dont vous aurez besoin en plus de cas général est un vaste sujet. Voir ?regex
D'autres possibilités que de travail pour cet exemple: