如何使用gsub超过9个反向引用?我希望下面例子中的输出是"e,g,i,j,o".
> test <- "abcdefghijklmnop"
> gsub("(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)", "\\5, \\7, \\9, \\10, \\15", test, perl = TRUE)
[1] "e, g, i, a0, a5"
Run Code Online (Sandbox Code Playgroud)
请参阅使用R语言的正则表达式:
您可以使用反向引用
\1
通过\9
置换文本中重新插入一个匹配的文本捕获组.整体匹配没有替换文本标记.将整个正则表达式放在捕获组中,然后使用\1
.
但是使用PCRE,您应该可以使用命名组.因此,尝试分组命名和反向引用.(?P<
name
>
regex
)
(?P=
name
)
归档时间: |
|
查看次数: |
3556 次 |
最近记录: |