下面是Region列中的数据示例,我需要删除" (更多信息)"来自数据。
尝试:as.character(gsub( "[\\ (more info)]", "", States$Regions))-> abc
这没有给出正确的结果。
预期结果:
答案 0 :(得分:2)
有些不对劲。
1)不要在这里使用括号。在正则表达式中,[abc]
匹配a
或b
或c
。你想匹配整个模式,所以不要使用括号。 (你可以使用括号,但它没有必要
"\\ (more info)" # fix 1: no brackets
2)你似乎知道反斜杠用来逃避正则表达式中的东西。但它们必须紧挨着它们逃脱的东西!在这里,你正在逃避一个毫无意义的空间。您需要转义属于您的模式的两个括号:
"\\(more info\\)" # fix 2: escape parens
3)你仍然需要空间,但它在前面,在(转义)括号之前:
" \\(more info\\)" # fix 3: space at beginning
现在模式应该有效。另请注意,gsub
会返回character
,因此您的as.character
是多余的。
我强烈建议您使用像regex101.com这样的网站来调试正则表达式。你只需要单\
来逃避,但除此之外它就像R. Here's your example。查看侧栏以获得很好的解释。