2010-01-13 30 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