2010-01-13 48 views
1

我在textarea中使用html控件中选择的不同条件构建查询。用户也可以对其进行修改。构建,语法检查,解析和评估查询

客户端: 了状态的文章:

a(1, 3) > 20 
b(4, 5) < 90 
c(3, 0) = 80 

我形成一个查询:

a(1, 3) > 20 and b(4, 5) < 90 or c(3, 0) = 80 

在服务器端这必须解析,查找和调用每个功能参数。 (a,b和c是函数)

我想在处理它之前检查查询语法(不确定在客户端或服务器端)。 例如,如果用户输入不正确的函数/参数或他们使用不正确的操作符。

感谢您的建议和反馈。

PS:使用Python

+0

你怎么知道前两个应该是“和”编,而第三个是“或”编? – PaulMcG 2010-01-13 16:00:05

+0

接受这个的任何组合都只是一个例子。 – Vishal 2010-01-13 16:46:00

回答

4

PLY有一个简单的expression example,将让你大部分的方式存在。

+0

+1,我会建议PLY,如果只是为了能够增长语法而不重做正则表达式。 – 2010-01-13 15:36:03