1

我正在尝试在 R 中使用正则表达式。我对这种语言很陌生,很抱歉这个基本问题。我正在处理这个字符串(“11.22.33.44”),我将只使用其中的一部分(“11.22.33”)。我会删除(“.44”)并添加 55 以获得结果(“11.22.3355”)。

4

1 回答 1

2
s <- "11.22.33.44"
sub("([[:digit:]]*\\.[[:digit:]]*\\.[[:digit:]]*)(\\.[[:digit:]]+)", "\\1", s)
#[1] "11.22.33"

?regex

使用括号划分两种不同的模式,并仅返回与第一个模式匹配的部分。第一种模式是由两个句点分隔的任意数量的数字。任何正则表达式函数的第一个参数中的句点都需要转义(两次)。

第二"\\1"个参数中的 是引用第一个模式的示例。第二个参数中的反斜杠与第一个参数中的反斜杠的转义方式不同。

于 2013-10-15T14:57:21.770 回答