2012-06-26 197 views
0

我需要能夠以編程方式擴展用戶的搜索表達式,例如: X w/5(Y || Z) 至 「X Y」〜5 || 「X Z」〜5
有沒有一個現有的庫可以用來做這種事情?如果不是,建議採用什麼方法?該解決方案將在.NET環境中生存。以編程方式將X w/5(Y || Z)擴展爲「X Y」〜5 || 「X Z」〜5

+2

你能解釋一下你爲什麼要這樣做嗎?也許有其他方法可以實現您的最終目標。 – GregRos

+0

我已更正我的帖子以更好地反映底層目的:將近似查詢傳遞給Lucene。 – balazs

回答

1

你需要的是一個解析器,它將創建一個抽象語法樹,然後你可以對其進行操作。看看here

+0

解析器本身不會重寫表達式。他需要的是一個解析器和一個自定義表達式重寫例程。 –

相關問題