2012-04-09 36 views
1

我想问一下,是否有办法查看隐藏在文本中的变量。隐藏在文本中的变量

,如果我跑

k <- eval(expression(v <- 1)) 

然后我得到,其等于1

但它是如何,如果我有

k <- "v <- 1" 

谢谢合作提前

+1

现在'v'不是一个变量。它是一个字符串的一部分。你想要做什么? – 2012-04-09 16:59:40

+0

请看我编辑的问题 – 2012-04-09 17:05:48

回答

5

使用parse(text=k)创建一个表达式,然后评估它:

eval(parse(text=k)) 
v 
# [1] 1 
+0

你说得对。非常感谢你 !!! – 2012-04-09 17:19:15

0

如果您想评估这些命令,请检出evalevalq命令代码。

如果你只是想找到一个<-操作之前的任何字符串,我想你可以使用类似:

regexpr("(.*)[\\s]*<-", "a <- 1", perl=TRUE) 

这将返回变量名的开头索引,或者-1如果有ISN”一个。如果您只需要变量名称,则可以使用substr命令来提取它。