我想问一下是否有办法看到隐藏在文本中的变量。
如果我跑
k <- eval(expression(v <- 1))
然后我得到v等于1。
但如果我有
,它是如何工作的k <- "v <- 1"
提前谢谢
答案 0 :(得分:5)
使用parse(text=k)
创建表达式,然后对其进行评估:
eval(parse(text=k))
v
# [1] 1
答案 1 :(得分:0)
如果您想要评估代码,请检查eval
和evalq
命令。
如果你只想在<-
运算符之前找到任何字符串,我想你可以使用类似的东西:
regexpr("(.*)[\\s]*<-", "a <- 1", perl=TRUE)
将返回变量名称的起始索引,如果没有,则返回-1。如果您只想要变量名,可以使用substr
命令提取它。