You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB与JavaScript大小写不敏感查询:变量使用问题求助

解决MongoDB正则匹配中变量替换的问题

你原来的代码无法工作,是因为/code/i是正则字面量,它匹配的是字符串"code"本身,而不是变量code的值。不需要给变量加特殊引号或转换类型,只要用正确的方式引用变量构造正则即可,以下两种方法都可以:

方法一:使用RegExp构造函数

通过RegExp构造函数传入变量和修饰符,动态创建正则表达式:

const code = "group1";
const group: any = await this.groupModel.findOne({
  name: new RegExp(code, 'i')
});

方法二:使用MongoDB的$regex与$options语法

用MongoDB原生的查询语法,将正则字符串和修饰符分开指定:

const code = "group1";
const group: any = await this.groupModel.findOne({
  name: { 
    $regex: code,
    $options: 'i'
  }
});

这两种方式都能实现忽略大小写匹配变量code对应的分组名称,替换后就能正常查询到目标文档了。

内容的提问来源于stack exchange,提问作者user19238266

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 08:50:29