如何删除所有以" @"开头的单词?从字符串?
例如, " @AgnezMo On @AirAsia空中客车A320-216舰队与@NinetologyMY Livery - 9M-AHG cc:@AgnesMonicaEnt @agnezone http://t.co/hfXwUQq2Oq"
我想要字符串 "空中客车A320-216舰队与制服 - 9M-AHG cc:http://t.co/hfXwUQq2Oq"
答案 0 :(得分:12)
尝试使用s
作为输入:
gsub("@\\w+ *", "", s)
,并提供:
"On Airbus A320-216 Fleet with Livery -- 9M-AHG cc: http://t.co/hfXwUQq2Oq"
答案 1 :(得分:1)
如here所述,您可以通过sub
来电使用正则表达式。
与之匹配的正则表达式为:@\w+\s+
。
答案 2 :(得分:0)
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"
答案 3 :(得分:0)
假设str
是字符串,
> gsub("@[A-Za-z]+ ", "", str)
# [1] "On Airbus A320-216 Fleet with Livery -- 9M-AHG cc: http://t.co/hfXwUQq2Oq"
答案 4 :(得分:0)
我会使用字符串包中的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
您还可以使用or运算符将不同的字符类串在一起,这样就可以用一行替换字符和空格。请查看下面的代码,修改数据框的列名以进行清理:
> colnames(order_table) <- str_replace_all(colnames(order_table),"[:punct:]|[:space:]","")