在grep中,"'\''是一个无法识别的逃脱"

Bra*_*roy 9 regex grep pcre r

我在R中的一些项目中使用grep(使用perl=TRUE标志)并且在我的生活中我无法弄清楚为什么R不断抛出错误.我的查询如下:

d$SomeColumn[grep("(?ix)<VNW[^;]*;(dis|dat)> \w*<N\(", d$Right, perl=TRUE)] <- 1
Run Code Online (Sandbox Code Playgroud)

但是,R抛出以下错误:

Error: '\w' is an unrecognized escape in character string starting ""<VNW[^;]*;(dis|dat)> \w"
Run Code Online (Sandbox Code Playgroud)

Avi*_*Raj 16

你需要在r中再次逃避反斜杠.

d$SomeColumn[grep("(?ix)<VNW[^;]*;(dis|dat)> \\w*<N\\(", d$Right, perl=TRUE)] <- 1

                                              |     |
Run Code Online (Sandbox Code Playgroud)