gsub 并删除 R 中 < 和 > 之间的所有字符
gsub and remove all characters between < and > in R
我有一个字符串:
a="<gml:posList srsDimension=\"2\" count=\"5\">7 -5.067 -3 56.7 -3.3 58.3 -5.65 57 -8.33</gml:posList>"
并希望对 < 和 > 之间的所有内容进行 gsub,目前为止可用。我只想保留剩余的数字(即 7 -5 -3 56 -3 58...),我可以在其中处理每个 even/odd 元素。
我试了Remove all text between two brackets没用
> gsub('<^|*>','',a[[1]],perl=TRUE)
Error in gsub("<^|*>", "", a[[1]], perl = TRUE) :
invalid regular expression '<^|*>'
In addition: Warning message:
In gsub("<^|*>", "", a[[1]], perl = TRUE) : PCRE pattern compilation error
'nothing to repeat'
at '*>'
和
gsub('<gml.+>\d','',a[[1]])
哪个削减删除第一个数字
我确定我遗漏了一些明显的东西,因为“<”不是特殊字符。
这里有一些其他尝试(但失败了)
> gsub('<.+>','',a[[1]])
[1] ""
> gsub('<.+>.+<.+>','',a[[1]])
[1] ""
> gsub('<gml.+>','',a[[1]])
[1] ""
您可以使用
gsub("<[^>]+>", "",a)
[1] "7 -5.067 -3 56.7 -3.3 58.3 -5.65 57 -8.33"
“<”和“>”是文字,“[^>]”匹配任何不是“>”的字符,“+”允许一个或多个匹配。使用 gsub
重复此匹配的次数与找到此模式的次数相同。该模式被空字符串“”替换。
library(qdapRegex)
a="<gml:posList srsDimension=\"2\" count=\"5\">7 -5.067 -3 56.7 -3.3 58.3 -5.65 57 -8.33</gml:posList>"
rm_between(a, "<", ">", extract = T)
我有一个字符串:
a="<gml:posList srsDimension=\"2\" count=\"5\">7 -5.067 -3 56.7 -3.3 58.3 -5.65 57 -8.33</gml:posList>"
并希望对 < 和 > 之间的所有内容进行 gsub,目前为止可用。我只想保留剩余的数字(即 7 -5 -3 56 -3 58...),我可以在其中处理每个 even/odd 元素。
我试了Remove all text between two brackets没用
> gsub('<^|*>','',a[[1]],perl=TRUE)
Error in gsub("<^|*>", "", a[[1]], perl = TRUE) :
invalid regular expression '<^|*>'
In addition: Warning message:
In gsub("<^|*>", "", a[[1]], perl = TRUE) : PCRE pattern compilation error
'nothing to repeat'
at '*>'
和
gsub('<gml.+>\d','',a[[1]])
哪个削减删除第一个数字
我确定我遗漏了一些明显的东西,因为“<”不是特殊字符。
这里有一些其他尝试(但失败了)
> gsub('<.+>','',a[[1]])
[1] ""
> gsub('<.+>.+<.+>','',a[[1]])
[1] ""
> gsub('<gml.+>','',a[[1]])
[1] ""
您可以使用
gsub("<[^>]+>", "",a)
[1] "7 -5.067 -3 56.7 -3.3 58.3 -5.65 57 -8.33"
“<”和“>”是文字,“[^>]”匹配任何不是“>”的字符,“+”允许一个或多个匹配。使用 gsub
重复此匹配的次数与找到此模式的次数相同。该模式被空字符串“”替换。
library(qdapRegex)
a="<gml:posList srsDimension=\"2\" count=\"5\">7 -5.067 -3 56.7 -3.3 58.3 -5.65 57 -8.33</gml:posList>"
rm_between(a, "<", ">", extract = T)