我需要 java 中的比较器,它具有与 sql ‘like’ 运算符相同的语义。例如:
myComparator.like("digital","%ital%");
myComparator.like("digital","%gi?a%");
myComparator.like("digital","digi%");
应该评估为真,并且
myComparator.like("digital","%cam%");
myComparator.like("digital","tal%");
应该评估为假。任何想法如何实现这样的比较器,或者有人知道具有相同语义的实现吗?这可以使用正则表达式来完成吗?
原文由 Chris 发布,翻译遵循 CC BY-SA 4.0 许可协议
.\* 将匹配正则表达式中的任何字符
我认为 java 语法是
对于单个字符匹配,只需使用一个点。
并匹配一个实际的点,将其转义为斜杠点