替换字符串中的标点符号

时间:2017-02-23 16:52:02

标签: r regex

我想通过添加' \\'来替换字符串中的标点符号。在标点符号之前。原因是我之后会在字符串上使用正则表达式,如果没有' \\'在它面前。

所以基本上,我想做这样的事情:

gsub("\\?","\\\\?", x)

哪个转换字符串"你好吗?"到了#34;你好吗?"但我想为所有标点符号做这件事。这可能吗?

1 个答案:

答案 0 :(得分:3)

您可以将 gsub [[:punct:]] 正则表达式别名一起使用,如下所示:

> x <- "Hi! How are you today?"
> gsub('([[:punct:]])', '\\\\\\1', x)
[1] "Hi\\! How are you today\\?"

请注意,替换以'\\\\'开头,以产生您请求的双反斜杠,而'\\ 1'部分保留标点符号。