我正在Mongo中尝试不区分大小写的搜索。基本上我想要不区分大小写的字符串匹配我正在使用正则表达式。这是我的代码
Query query = new Query( Criteria.where(propName).regex(value.toString(), "i"));
但上面的剂量匹配我的整个字符串(有时用空格的字符串)。它返回值,即使它是一个子字符串。
例如:假设我的收藏有2个值"比尔"和"比尔状态',它返回我" bill"即使我的搜索是"账单状态"。即使存在我正在搜索的字符串的子字符串
,它也会返回结果我试过,Query query = new Query( Criteria.where(propName).is(value.toString()));
但以上是区分大小写的。有人可以帮忙解决这个问题。
答案 0 :(得分:1)
你的正则表达式没有固定在正面和背面以保持等效。将值传递给:
foo: /^VALUE$/i
插入符号将字符串固定在前面,以便在不区分大小写的情况下进行全文匹配。