正则表达式 – 在R中的所有括号内提取信息

前端之家收集整理的这篇文章主要介绍了正则表达式 – 在R中的所有括号内提取信息前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个字符串和什么来提取多个括号内的信息。目前我可以用下面的代码从最后一个括号中提取信息。我该如何做,所以它提取多个括号和返回作为一个向量?
j <- "What kind of cheese isn't your cheese? (wonder) Nacho cheese! (groan) (Laugh)"                                                          
sub("\\).*","",sub(".*\\(",j))

电流输出为:

[1] "Laugh"

所需输出为:

[1] "wonder" "groan"  "Laugh"
这是一个例子:
> gsub("[\\(\\)]",regmatches(j,gregexpr("\\(.*?\\)",j))[[1]])
[1] "wonder" "groan"  "Laugh"

我认为这应该很好:

> regmatches(j,gregexpr("(?=\\().*?(?<=\\))",j,perl=T))[[1]]
[1] "(wonder)" "(groan)"  "(Laugh)"

但结果包括括号…为什么?

这样做:

regmatches(j,gregexpr("(?<=\\().*?(?=\\))",perl=T))[[1]]

感谢@MartinMorgan的评论

原文链接:https://www.f2er.com/regex/357579.html

猜你在找的正则表达式相关文章