R 如何在保持字符串不变的情况下在模式之前附加字符串?

R 如何在保持字符串不变的情况下在模式之前附加字符串?,r,gsub,stringr,R,Gsub,Stringr,我试图找到模式的位置,但在替换时,我无法保留旧字符串。以下是一个例子: old <- "(101==1,2) AND (102==1)" str_replace_all(old, "\\(\\d+", replacement = "(stringToReplace") 但我希望输出为 (stringToReplace101==1,2) AND (stringToReplace102==1) 可以在正则表达式的各个部分周围放置括号。您可以使用\1、\2等来引用它们。在本例中,我在\\d+

我试图找到模式的位置,但在替换时,我无法保留旧字符串。以下是一个例子:

old <- "(101==1,2) AND (102==1)"
str_replace_all(old, "\\(\\d+", replacement = "(stringToReplace")
但我希望输出为

(stringToReplace101==1,2) AND (stringToReplace102==1)

可以在正则表达式的各个部分周围放置括号。您可以使用
\1
\2
等来引用它们。在本例中,我在
\\d+
周围添加了括号,在替换中,我添加了与第一组括号匹配的所有内容:

str_replace_all(old, "\\((\\d+)", replacement = "(stringToReplace\\1")

有关更多信息,请参见《替换字符串向量中的正则表达式匹配》一节。您可以在正则表达式的各个部分周围放上括号。您可以使用
\1
\2
等来引用它们。在本例中,我在
\\d+
周围添加了括号,在替换中,我添加了与第一组括号匹配的所有内容:

str_replace_all(old, "\\((\\d+)", replacement = "(stringToReplace\\1")
有关更多信息,请参见中的替换字符串向量中的正则表达式匹配部分