Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 正则表达式:删除以字符开头和结尾的单词或字母_R_Regex - Fatal编程技术网

R 正则表达式:删除以字符开头和结尾的单词或字母

R 正则表达式:删除以字符开头和结尾的单词或字母,r,regex,R,Regex,我想用正则表达式删除R中以特定字符开头和结尾的单词或字母 比如说, "I want to delete @word&" 应该是 "I want to delete" "I want to delete" 及 应该是 "I want to delete" "I want to delete" 您可以使用gsub: gsub("@[^&]*&","","I want to delete @word&") # [1] "I want to delete

我想用正则表达式删除R中以特定字符开头和结尾的单词或字母

比如说,

"I want to delete @word&"
应该是

 "I want to delete"
"I want to delete" 

应该是

 "I want to delete"
"I want to delete" 

您可以使用
gsub

gsub("@[^&]*&","","I want to delete @word&")
# [1] "I want to delete "


gsub("(^|\\s)@[^&]*&","","I  want to delete @p&")
# [1] "I  want to delete "
处理额外空间的方法取决于您的实际情况,但我认为如果微调输出是可接受的,则以下内容应该是好的:

trimws(gsub("\\s*@[^&]*&","","@nope& hello @nope& world @nope&"))
# [1] "hello world"

不同的模式-它足以使
+
不贪婪:

gsub("@.+?&","","I want to delete @word&")

为什么要投反对票?这是一个完全合理的问题