我正在尝试匹配R中字符串中重复捕获组的特定元素。在此示例中,该字符串包含一组3个数字(可选十进制或负数),我可以使用分别进行选择
> gsub(x = "-10.05 20 30.1 some information",
pattern = "^((-?[0-9]+(?:\\.[0-9]+)?)\\s){1}(.*)$",
replacement = "\\2")
"-10.05"
通过用{2}
或{3}
替换图案中的{1}
部分。
在更一般的情况下:有没有办法同时接收第n个和第m个匹配项?在本例中,可能是{1}
和{3}
?类似于
> gsub(x = "-10.05 20 30.1 some information",
pattern = "^((-?[0-9]+(?:\\.[0-9]+)?)\\s){3}(.*)$",
replacement = ...)
"-10.05 30.1"
其中...
当然包含规范。
1条答案
按热度按时间cqoc49vn1#
我的问题的充分答案可能可以改编自this已经回答的问题。在我的情况下,它可能是如下所示: