R删除unicode linebreaks

时间:2014-08-23 23:50:22

标签: regex r

我在字符串中有Unicode换行符,我需要删除它。

这些字符可以是回车\U000D,换行符\U000A,行分隔符或段落分隔符。

我可以使用以下内容删除回车符和换行符。

gsub("\\s", "", x)

就像我说的那样,对于那些Unicode字符可以正常工作,但是我无法删除行分隔符\U2028或段落分隔符\U2029字符。

还有其他办法吗?

1 个答案:

答案 0 :(得分:4)

您可以使用perl=T启用PCRE并使用便捷的转义序列(\R

> x <- 'foo\U000D\U000A bar\U2029 baz\U2028\U2029'
> x
## [1] "foo\r\n bar\u2029 baz\u2028\u2029"
> gsub('\\R', '', x, perl=T)
## [1] "foo bar baz"