在类型String
中将所有-
替换为*
,我可以写
String firstName = firstName.replaceAll("-", "*");
在Criteria Expression
中有没有办法做同样的事情?
在将其与like
方法中的模式进行比较之前,我需要从名字中删除特殊字符。
我的表情:
Expression<String> firstName = root.get("firstName");
builder.like(firstName, pattern);
答案 0 :(得分:0)
感谢@SimonMartinelli的评论。我的问题通过使用
解决了builder.function("REGEXP_REPLACE", String.class, firstName, builder.literal("[^a-zA-Z0-9]+"), builder.literal(""));