在R中我可以使用\\1
来引用捕获组。但是,在使用stringi包时,这并不能按预期工作。
library(stringi)
fileName <- "hello-you.lst"
(fileName <- stri_replace_first_regex(fileName, "(.*)\\.lst$", "\\1"))
[1] "1"
预期输出:hello-you
。
在the documentation我无法找到与此问题有关的任何内容。
答案 0 :(得分:4)
您需要在替换字符串中使用$1
而不是\\1
:
library(stringi)
fileName <- "hello-you.lst"
fileName <- stri_replace_first_regex(fileName, "(.*)\\.lst$", "$1")
[1] "hello-you"
来自doc,stri_*_regex
使用ICU's regular expressions