我不确定为什么我无法获得在R / RStudio中工作的简单反向引用。
grepl('name\1','namename')
返回FALSE。 grepl('(name)\1','namename')
也不好。
我做错了什么?
谢谢!
答案 0 :(得分:6)
使用1
之前的双重反冲(正则表达式引擎会将其理解为单个反斜杠):
grepl('(name)\\1', 'namename')
## [1] TRUE
这是因为:
cat('(name)\\1')
## (name)\1
在您的情况下,\1 == \001
表示代码1的ASCII字符。
charToRaw('\1')
## [1] 01