spring MongoRepository 查询正则表达式

问题描述 投票:0回答:1

我希望在查询注释中使用 MongoRepository 来使用正则表达式。到目前为止,我找到的唯一信息是中文帖子,但没有解释它是如何工作的,我不确定是否是我正在寻找的。

@Query("{ 'name':{'$regex':?2,'$options':'i'}, sales': {'$gte':?1,'$lte':?2}} ”) 公共页面findByNameAndAgeRange(字符串名称,双倍ageFrom,双倍ageTo,可分页页面);

有人知道是否可以在查询中使用特定的正则表达式?

问候。

java spring-data spring-data-mongodb
1个回答
16
投票

i 切换不区分大小写,并允许模式中的所有字母匹配大小写。

MongoDB 文档中阅读有关 $regex 的更多信息。

在您的查询中,您似乎混淆了参数顺序(名称正则表达式中的 ?2)。我认为应该是:

@Query("{ 'name':{$regex:?0,$options:'i'}, 'sales': {$gte:?1,$lte:?2}}") 
public Page findByNameAndAgeRange(String name,double ageFrom,double ageTo,Pageable page);
© www.soinside.com 2019 - 2024. All rights reserved.