Som我是R.的新手。我正在学习这种形成正则表达式的概念。
即。像这样"(\\2.\\3)"
。这些是什么?我的意思是,这些数字和符号代表什么?任何人都可以用非常外行的语言解释这是什么意思?或类似的东西,(\2.\4)(\2.\4)
,这是什么意思?谢谢你的帮助!
答案 0 :(得分:4)
它们被称为backreferences,可以回想起捕获组所匹配的内容。可以通过将要分组的字符放在一组括号( )
内来创建capturing group。反向引用在R中指定为反斜杠(\
),两个反斜杠(\\
);然后是一个数字,表示要召回的群组号。
下面是一个替换使用反向引用来调用捕获组#2
和#3
匹配的内容的示例...
x <- 'foo bar baz quz'
sub('(\\S+) (\\S+) (\\S+) (\\S+)', '(\\2.\\3)', x)
# [1] "(bar.baz)"
注意:替换中的左括号和右括号都是文字字符。