if条件的正则表达式

时间:2015-09-17 10:48:11

标签: javascript regex

我接受像excel表达式一样的if条件;

InterfaceController

我希望正则表达式提取每个条件,例如,当我运行以下代码时: IF( condition1, value_if_true1, IF( condition2, value_if_true2, value_if_false2 ))

我应该得到这样的结果: var matchInfo = REGEXP.exec(fieldExpression);

我该如何实现这个目标?

1 个答案:

答案 0 :(得分:0)

下面。它将根据您给出的模式为您提供condition1和条件2。由于您正在寻找多个匹配项,因此我使用while循环遍历,直到没有更多匹配项。

var pattern = /IF\(\s(\w+)/g;
var str = 'IF( condition1, value_if_true1, IF( condition2, value_if_true2, value_if_false2 ))';
var myMatches = [];
while ((newMatch = pattern.exec(str)) !== null) {
  myMatches.push(newMatch[1]);
}

文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/exec