Échappé Des Périodes Dans La R Des Expressions Régulières
À moins que quelque chose m'échappe, cette expression semble assez simple:
grepl("Processor\.[0-9]+\..*Processor\.Time", names(web02))
Cependant, elle n'aime pas échappé périodes, \.
pour que mon intention est d'être un littéral période:
Error: '\.' is an unrecognized escape in character string starting "Processor\."
Que suis-je malentendu à propos de cette syntaxe regex?
- Je ne sais pas de R mais ont essayé votre
\\.
? - Ay, qu'il fixe. Mais me demande vraiment pourquoi j'ai besoin de la double ` pour y échapper
- Vous en avez besoin pour échapper à l'autre de sorte que vous obtenez un passé la chaîne mangler et à travers le moteur d'expressions régulières.
- Bon, ça fait sens maintenant que j'ai lu stat.ethz.ch/R-manual/R-devel/library/base/html/Quotes.html
Vous devez vous connecter pour publier un commentaire.
Mon R-Fu est faible au point d'être inexistante, mais je pense que je sais ce qui est en place.
La gestion de chaîne d'une partie de la R du processeur est de jeter un regard à l'intérieur des chaînes de convertir
\n
et liées à des séquences d'échappement dans leur caractère équivalents. R ne sait pas ce que\.
signifie donc il se plaint. Vous voulez obtenir le point échappé vers le bas dans le moteur d'expressions régulières, de sorte que vous besoin pour obtenir un seul\
passé la chaîne mangler. La manière habituelle de faire ce genre de chose, c'est pour échapper au échapper:L'incorporation d'une langue (expressions régulières) à l'intérieur d'une autre langue (R) est généralement un peu brouillon, et encore plus lorsque les deux langues utilisent le même échapper à la syntaxe.
Au lieu de
Essayer
Vous avez besoin pour échapper à l'arrière en premier.