正则表达式-模式可能重复

时间:2018-07-20 12:45:20

标签: javascript regex regex-group

我一直在从事一些复杂的Regex写作。我有一些文本请求(例如SQL请求),我必须将其转换为Javascript中的JSON对象。为此,我正在考虑制作一个可以重复n次的正则表达式。

这是一个请求示例:

INSERT INTO {{ruleName}} RULES {{conditions}} WHEN {{true|false}}

我在这里的主要问题是conditions部分,因为它可以包含一个基本条件(object.property {=|!=|<|<=|>|>=} value)或带有{AND|OR}或括号(与数学相同的规则)的多个嵌套条件。

为满足第一个条件,我编写了此正则表达式:/(\s*(\w+.?\w*)\s*(=|!=|>|<|<=|>=)\s*'(.*?)'\s*)/gi

但是我无法为多条件或嵌套条件案例编写好的正则表达式。

这是我目前的正则表达式:/(\s*(\w+.?\w*)\s*(=|!=|>|<|<=|>=)\s*'(.*?)'\s*)((\bAND\b|\bOR\b)(\s*(\w+.?\w*)\s*(=|!=|>|<|<=|>=)\s*'(.*?)'\s*)\s*){0,}/gi

有人可以帮我吗?

编辑:根据要求,这是两个多重或嵌套条件的示例

  • {condition1} AND {condition2} OR {condition3}这里有多个条件
  • {condition4} AND ({condition5} OR {condition6})在那里嵌套了条件

0 个答案:

没有答案