如何编写 Hibernate Criteria 来匹配不区分大小写并修剪空格?
目前,我对 MyClass
的条件有限制,无法匹配 MyClass.propertyName
的值:
Restrictions.ilike("propertyName", matchString)
是否可以匹配 MyClass.propertyName
的值> 带有前导或尾随空格?
这是我试图匹配的正则表达式等效项:
\s*foo(\s*|\s+.*)
I currently have a restriction on a criteria of MyClass
to match values of MyClass.propertyName
:
Restrictions.ilike("propertyName", matchString)
Is it possible for this to match values of MyClass.propertyName
with leading or trailing whitespace?
Here is the regex equivalent of what I am trying to match:
\s*foo(\s*|\s+.*)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果
matchString
为"%foo%"
,并且 propertyName 值为" foo "
,则限制将接受此属性。这就是使用 like 运算符的全部意义。If
matchString
is"%foo%"
, and the propertyName value is" foo "
, then the restriction will accept this property. That's the whole point of using the like operator.有 2 种方法可以做到这一点:
matchString
类似于:"%foo%"
Restrictions.ilike("propertyName", matchString, MatchMode.ANYWHERE)
There is 2 way to do it:
matchString
like:"%foo%"
Restrictions.ilike("propertyName", matchString, MatchMode.ANYWHERE)