正则表达式在文本字符串中查找变量名称及其值

时间:2016-01-20 22:39:52

标签: javascript regex

假设我在文本字符串(str)中有一个随机变量和值。我必须编写什么正则表达式才能在数组中返回变量的名称和值?

str="var abcde = 'xyz';"
result = str.match(/.../); //<-??
//['abcde','xyz']; //value of result

我尝试了/\bvar\s+([^;]+)/,但结果会返回整个表达式abcde = 'xyz'

始终采用var somename = somevalue;格式,somevalue可以是数字,字符串,数组或对象。所以它可以包含()和{}以及逗号。

1 个答案:

答案 0 :(得分:1)

无法完成。

嗯......

您可以尝试解析javascript代码以检索变量的值, 但是,问题是只有在值为字符串,数组和放大器时才会起作用。仅包含字符串值的对象。 (如果不是大多数变量值将在运行时确定很多,并且没有任何关系)

所以我们要说它只是我们想要找到的字符串值...

这不是一项容易的任务,有许多形式可以解析键和值

scanf

还有更多......

如果您仍想继续使用此方法,我可以推荐您http://regexone.com/