如何从字符串中删除以“@”开头的所有单词?从字符串中删除以“@”开头的所有单词
例如, “@AgnezMo在@AirAsia空中客车A320-216机队@NinetologyMY号衣 - 9M-AHG CC:@AgnesMonicaEnt @agnezone http://t.co/hfXwUQq2Oq”
我想有串是 “在空中客车A320-216舰队与号衣 - 9M-AHG CC:http://t.co/hfXwUQq2Oq”
如何从字符串中删除以“@”开头的所有单词?从字符串中删除以“@”开头的所有单词
例如, “@AgnezMo在@AirAsia空中客车A320-216机队@NinetologyMY号衣 - 9M-AHG CC:@AgnesMonicaEnt @agnezone http://t.co/hfXwUQq2Oq”
我想有串是 “在空中客车A320-216舰队与号衣 - 9M-AHG CC:http://t.co/hfXwUQq2Oq”
试试这个地方s
是输入:
gsub("@\\w+ *", "", s)
捐赠:
"On Airbus A320-216 Fleet with Livery -- 9M-AHG cc: http://t.co/hfXwUQq2Oq"
嗨,谢谢!还有一个问题,我注意到使用gsub时区分大小写。是否有可能从数据中删除“AgnezMo”,而不管大写或小写?换句话说,我想删除AGNEZMO,agnezmo,agNEZMO等(以大写/小写的任何可能的组合) – user3456230
\ w匹配任一情况。 –
嘿,这也帮助我。谢了哥们! –
嗨,你可以这样做:
xx <- "@AgnezMo On @AirAsia Airbus A320-216 Fleet with @NinetologyMY Livery -- 9M-AHG cc: @AgnesMonicaEnt @agnezone http://t.co/hfXwUQq2Oq"
gsub("@([a-zA-Z0-9]|[_])*", "", xx)
## [1] " On Airbus A320-216 Fleet with Livery -- 9M-AHG cc: http://t.co/hfXwUQq2Oq"
假设str
是字符串,
> gsub("@[A-Za-z]+ ", "", str)
# [1] "On Airbus A320-216 Fleet with Livery -- 9M-AHG cc: http://t.co/hfXwUQq2Oq"
我会用字符类从stringr包str_replace_all功能:
usercomment <- c("@AgnezMo On @AirAsia Airbus A320-216 Fleet with @NinetologyMY Livery -- 9M-AHG cc: @AgnesMonicaEnt @agnezone")
library(stringr)
test <- str_replace_all(usercomment,"[:punct:]","")
test
您也可以串起来使用或运营商,所以你可以用一条线替换字符和空间不同的字符类。看下面的代码来修改数据帧的列名以清除它:
> colnames(order_table) <- str_replace_all(colnames(order_table),"[:punct:]|[:space:]","")
嗨,谢谢!还有一个问题,我注意到使用gsub时区分大小写。是否有可能从数据中删除“AgnezMo”,而不管大写或小写?换句话说,我想删除AGNEZMO,agnezmo,agNEZMO等(以大写/小写的任何可能的组合形式) – user3456230