gpt4 book ai didi

r - 在 R 的正则表达式中是否有等效的 "&"用于反向引用整个匹配?

转载 作者:行者123 更新时间:2023-12-04 11:08:39 24 4
gpt4 key购买 nike

我用vim的时候经常用&在替换中反向引用整个匹配项。例如,以下将所有“foo”的实例替换为“foobar”:

%s/foo/&bar/g

这里的好处是懒惰:我不必在匹配中键入括号,我只需要键入一个字符而不是两个字符作为替换中的反向引用。也许更重要的是,我在打字时没有弄清楚我的反向反射,从而减少了认知负担。

是否有等效于 &我在 vim 中使用 R 的正则表达式(也许使用 perl = T 参数)?

最佳答案

在基础 R sub/gsub 函数 中:答案是否定的,请参阅 this reference :

There is no replacement text token for the overall match. Place the entire regex in a capturing group and then use \1 to insert the whole regex match.



stringr 包中: 是的,您可以使用 \0 :
> library(stringr)
> str_replace_all("123 456", "\\d+", "START-\\0-END")
[1] "START-123-END START-456-END"

关于r - 在 R 的正则表达式中是否有等效的 "&"用于反向引用整个匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38706077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com