我已经下载了一个数据库,我想清理它。我想选择一个不必要的句子的一部分,删除它然后删除重复。
例如:
我有这个:
10 choco barres
100% pur jus Ananas
100% Pur jus d'orange avec pulpe
100% Pur jus d'orange avec pulpe
我想这样:
choco barres
pur jus Ananas
Pur jus d'orange avec pulpe
有人可以帮助我吗?
答案 0 :(得分:0)
这取决于你要删除的内容究竟是什么样的,但是你在gsub
的正确轨道上。如果您的字符串是s
,那么您只需要
gsub('[0-9% ]{2,}', ' ', s)
评估为
[1] " choco barres pur jus Ananas Pur jus d'orange avec pulpe Pur jus d'orange avec pulpe"
其中[ ... ]
定义要查找的一组字符,{2,}
指定查找其中的两个或更多字符。
这里有很多替代方案,具体取决于您的需求。特别是空间可以采用不同的方式处理。
为了摆脱重复,分割字符串,搜索唯一字符串并将其重新粘贴在一起更容易:
paste(unique(strsplit(s, '[0-9% ]{2,}')[[1]]), collapse = ' ')
返回
[1] " choco barres pur jus Ananas Pur jus d'orange avec pulpe"
请注意,这取决于在每个字符串段的开头都有一个数字字符串,因此不如上面的gsub
方法灵活。
查看the resources on the [regex] tag info page,这可以帮助您找出必要的内容。