我想在 MongoDB 中正则表达式搜索一个整数值。这可能吗?
我正在构建一个 CRUD 类型接口(interface),该接口(interface)允许 * 在各个字段中使用通配符。我正在尝试为一些整数字段保持 UI 一致。
考虑:
> db.seDemo.insert({ "example" : 1234 });
> db.seDemo.find({ "example" : 1234 });
{ "_id" : ObjectId("4bfc2bfea2004adae015220a"), "example" : 1234 }
> db.seDemo.find({ "example" : /^123.*/ });
>
如您所见,我插入了一个对象,并且能够通过值找到它。如果我尝试一个简单的正则表达式,我实际上找不到对象。
谢谢!
最佳答案
如果您想对数字进行模式匹配,在 mongo 中执行此操作的方法是使用 $where 表达式并传入模式匹配。
> db.test.find({ $where: "/^123.*/.test(this.example)" })
{ "_id" : ObjectId("4bfc3187fec861325f34b132"), "example" : 1234 }
关于regex - 整数值的 MongoDB 正则表达式搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2908100/