【发布时间】:2022-10-15 16:05:17
【问题描述】:
我正在寻找一个正则表达式,它可以帮助我提取公式中以函数开头并在括号内的术语。
例如,假设我有以下公式:
formula <- formula(cured ~ dur(duration) + age + sex + duranduran)
我可以提取单个术语:
attr(terms(formula), "term.labels")
返回向量
[1] "dur(duration)" "age" "sex" "duranduran"
我想使用grep 和一些正则表达式来给出dur() 所包含的任何术语的索引。到目前为止,我已经尝试过
grep("^dur", attr(terms(formula), "term.labels"))
但这没有考虑括号。它返回 1 和 4,因为术语 dur(duration) 和 duranduran 都以 dur 开头。我正在寻找一个正则表达式:
以dur( 开头,以) 结尾。
【问题讨论】:
-
你的意思是
grep("^dur\\(.*\\)$", attr(terms(formula), "term.labels"))?