2010-10-26 101 views
0

我有施加表达式过滤表列。有没有现成的解析器可以让我解析这个列?柱可包含简单的条件,例如解析器,用于表达筛选

PROPERTY = 'name' AND PROPERTY2 = 'something else'

或多个高级等

(PROPERTY IN ('foo', 'bar') AND (PROPERTY IN ('foo1', 'bar2') OR OTHER_PROPERTY IN ('etc'))

它将完全足够了它是否会在表达返回的属性列表和任何一个值(在以下情况下=运算符)或所有值的列表(即使一个属性在表达式中多次出现)。有没有这样的解析器可用或我必须自己写吗?

+0

从你的描述我明白你所表达存储在数据库表中,但你在找一个分析器,在SQL或Java使用?表达式存储在表中,然后用于由Java代码构建的后续SQL查询中吗?请添加一些关于如何使用这些表达式的信息,谢谢。 – Tony 2010-10-26 10:19:05

+0

是的,你说得对,还有存储在数据库列表达,我也有在Java代码中表达的一些分析和进一步处理。目前分析是非常简单和规则是硬编码和依靠知识表达式是如何构造的(在其它代码的一部分,因此例如,它是硬编码的是“SOME_PROPERTY = \\ d +”如果改为“SOME_PROPERTY中会引起问题(1,2,3),这在列中是合法的)我想对它进行增强,以便能够更广泛地进行解析。 – kane77 2010-10-26 10:44:10

回答

0

我不知道你是如何开发项目。但是如果你正在使用休眠,你可以使用条件查询。 Cirteria queries