标签: regex r
我在字符串中有Unicode换行符,我需要删除它。
这些字符可以是回车\U000D,换行符\U000A,行分隔符或段落分隔符。
\U000D
\U000A
我可以使用以下内容删除回车符和换行符。
gsub("\\s", "", x)
就像我说的那样,对于那些Unicode字符可以正常工作,但是我无法删除行分隔符\U2028或段落分隔符\U2029字符。
\U2028
\U2029
还有其他办法吗?
答案 0 :(得分:4)
您可以使用perl=T启用PCRE并使用便捷的转义序列(\R)
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"