我在 MondoDB 中存储了大量文本数据,用户可以通过文本(名称)搜索特定文档。
{
"_id" : ObjectId("5e576bc2250d423ef59ba631"),
"isDeleted" : false,
"isActive" : true,
"createdDate" : ISODate("2020-02-25T04:32:04.746Z"),
"email" : "abc@gmailcom",
"name" : "ABC (Pvt) Ltd",
"contactNumber" : "56702601994",
"address" : "No.515,xxxx xxxxx,",
"__v" : 0
},
{
"_id" : ObjectId("5e576bc2250d423ef59ba645"),
"isDeleted" : false,
"isActive" : true,
"createdDate" : ISODate("2021-03-25T04:32:04.746Z"),
"email" : "cd@gmailcom",
"name" : "samsung (Pvt) Ltd",
"contactNumber" : "56432601994",
"address" : "No.325,xxxx xxxxx,",
"__v" : 0
}
我在下面试过
let name = 'ABC (Pvt) Ltd' // samsung (Pvt) Ltd
Dealer.findOne({ isActive: true, name: { $regex: new RegExp('^' + name, 'i') } },
(err, result) => {})
也试过这个
Dealer.findOne({ isActive: true, name: { $regex: {$regex: name, $options: 'i'}} }, (err, result) => {});
也试过了
Dealer.findOne({ isActive: true, name: { $regex: new RegExp(name.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&') + '$', 'i') } },
(err, result) => {});
当字符串包含空格时,它似乎不起作用。
MongoDB shell 版本 v4.0.9