【发布时间】:2019-10-07 16:38:19
【问题描述】:
我试图仅从从右到左开始的第一个方括号中提取字符串
我尝试了多种使用str_match 和regexpr 的方法,但我做不到。
c<-"Sens [91] [DRCol105]_Issuer[Risk\\Issuer]"
str_match(c,"\\[.*?\\]$")
OR
start.char<-regexpr("\\[*$",c)[1]+2
stop.char<-regexpr("\\]*$",c)[1]-1
substr(c,start.char,stop.char)
我想提取最后一个方括号内的所有内容。在这个例子中,我想提取并保存在一个变量中,只有“Risk\Issuer”。
【问题讨论】:
-
尝试
str_match(c,"([^\\[]+)\\]$")[,2]- 即选择不是[的字符串,后跟]$。请注意,str_match应该与捕获组(...)一起使用 - 不像str_extract -
你好。请尽量避免使用预定义名称命名对象(或函数)。在您的情况下,
c用于连接