在R中替换标点符号“。”在字符串

时间:2015-10-12 09:50:10

标签: r replace punctuation

我查看了网页,发现此网页In R, replace text within a string替换了字符串中的文字。

我尝试了相同的方法来替换标点符号“。”进入另一个标点符号“ - ”但它没有用。

 group <- c("12357.", "12575.", "197.18", ".18947")
 gsub(".", "-", group)

给出了这个输出

 [1] "------" "------" "------" "------"

而不是

 [1] "12357-" "12575-" "197-18" "-18947"

是否有其他方法可以做到这一点?

1 个答案:

答案 0 :(得分:6)

“”。在正则表达式langage意味着“任何字符”。要捕获实际点,您需要将其转义,所以:

gsub("\\.", "-", group)
#[1] "12357-" "12575-" "197-18" "-18947"

如@akrun在评论中所提到的,如果您愿意,也可以将它括在括号中,然后您不需要将其转义:

gsub('[.]', '-', group)
[1] "12357-" "12575-" "197-18" "-18947"