任何人都可以帮助我转换以下查询:
@Query("{$or:[{'name':?0},{'synonims':?0}]}")
Stream<Examination> customFind(String str);
使用正则表达式查询,根据Spring文档,该请求将允许不区分大小写的请求:
精确(不区分大小写){"firstname" : { $regex: /^firstname$/, $options: 'i'}}
以下操作无效:
@Query("{$or:[{'name':{ $regex: '/^?0$/', $options: 'i' }},{'synonims':{ $regex: '/^?0$/', $options: 'i' }}]}")
答案 0 :(得分:0)
字符?
是正则表达式中的特殊字符,表示可选,例如a?
意味着a
可能存在或不存在。
如果要匹配它,必须将其转义。
$regex: '/^\?0$/'
如果您需要按字面意义输入,则需要两个反斜杠:
$regex: '/^\\?0$/'