编程语言
首页 > 编程语言> > 通用Java模式识别库-类似于List的正则表达式

通用Java模式识别库-类似于List的正则表达式

作者:互联网

是否有一个库可以让我编写类似于regexp的对象列表查询,就像java.util.regexp对字符串的匹配(从概念上讲就是字符列表)一样?

我希望能够使用带有贪婪/保守量词的模式,识别匹配项中的组等.显然,我必须提供用于将查询令牌与列表中的对象进行匹配的代码.

我不只是为了节省时间而不编写自己的查询解析器.我知道正则表达式实现(针对字符串)是一个经过深入研究的领域,而且Sun的java.util.regex肯定早已对其进行了优化.我写的任何东西都几乎没有效率,而且我可能不得不处理很长的列表(但很简单的查询).

谢谢!

解决方法:

如果您存储在列表中的对象受到限制,则可以在列表中的对象和该对象唯一的Unicode字符之间创建一个Map.因此,给定您的列表,您将生成一串唯一代表您的列表的字符.

之后,您可以对生成的字符串使用现有的regex软件包,并匹配所需的任何内容.之后,您可以映射回列表.

标签:java,design-patterns
来源: https://codeday.me/bug/20191210/2102411.html