我正在尝试使用以下代码将两个点替换为一个点:
test<-"test..1"
gsub("\\..", ".", test, fixed=TRUE)
并获得:
[1] "test..1"
我尝试了几种转义字符串的组合,包括方括号[]但都没有成功。
我做错了什么?
test<-"test..1"
gsub("\\..", ".", test, fixed=TRUE)
并获得:
[1] "test..1"
我尝试了几种转义字符串的组合,包括方括号[]但都没有成功。
我做错了什么?
如果你要使用fixed = TRUE
,请使用(未解释的)字符.
:
> gsub("..", ".", test, fixed = TRUE)
否则,在正则表达式中(fixed = FALSE
),.
有一个特殊含义(任何字符),因此您需要在其前面加上反斜杠以表示“点字符”:
> gsub("\\.\\.", ".", test)
> gsub("\\.{2}", ".", test)
gsub("[.]{2}", ".", test)
- Matthew Lundberg