【发布时间】:2014-06-24 20:09:19
【问题描述】:
我想用特定的单词替换所有包含符号 @ 的单词。我使用 gsub,因此将其应用于字符向量。不断出现的问题是当我使用时:
gsub(".*@.*", "email", data)
字符向量该部分中的所有文本都将被删除。
有多个不同长度的电子邮件,因此我无法将前面的字符和后面的字符设置为特定数字。
有什么建议吗?
我已经完成了有关正则表达式的大量阅读,但我尝试的一切都失败了。
这是一个例子:
data <- c("This is an example. Here is my email: emailaddress@help.com. Thank you")
data <- gsub(".*@.*", "email", data)
它返回 [1]“电子邮件”
当我想要的时候 [1]“这是一个例子。这是我的电子邮件:电子邮件。谢谢”
【问题讨论】:
-
欢迎来到 Stack Overflow!请考虑添加一个small reproducible example,以便我们更好地理解并更轻松地回答您的问题。
-
.*匹配所有字符,也许你想要[^\s]*@[^\s]* -
如果您只想替换“@”符号,只需使用
gsub("@", "email", data),否则您与该模式匹配的任何其他内容也会被替换。 -
@user3772674 添加新信息时,最好编辑您的原始问题,而不是在 cmets 中添加其他信息。