正则表达式的多种模式 MongoDB 图集
Multiple Patterns for Regex Expression MongoDB Atlas
我正在尝试让 MongoDB 聚合管道正常工作。我需要将名称与“John”匹配并将其“家乡”字段正则表达式匹配为正则表达式匹配“CAPETOWN”或“FLORIDA”而不区分大小写。基本上,如果这些模式中的任何一个存在于文档的“家乡”字段中。这是我目前所拥有的。
const news = await cachedDb.collection(COLLECTION).aggregate([
{ $match: { "name": "John", "hometown": { $regex: /CAPETOWN/, $options: 'i' } } }
]).toArray();
我只能得到CAPETOWN,我想要一个OR。例如“家乡”包含带有选项 (i) 的 CAPETOWN 或 FLORIDA。我该怎么做?
您必须直接在正则表达式字符串中设置 OR。
db.collection.aggregate([
{
$match: {
"hometown": {
$regex: "CAPETOWN|FLORIDA",
$options: "i"
}
}
}
])
我正在尝试让 MongoDB 聚合管道正常工作。我需要将名称与“John”匹配并将其“家乡”字段正则表达式匹配为正则表达式匹配“CAPETOWN”或“FLORIDA”而不区分大小写。基本上,如果这些模式中的任何一个存在于文档的“家乡”字段中。这是我目前所拥有的。
const news = await cachedDb.collection(COLLECTION).aggregate([
{ $match: { "name": "John", "hometown": { $regex: /CAPETOWN/, $options: 'i' } } }
]).toArray();
我只能得到CAPETOWN,我想要一个OR。例如“家乡”包含带有选项 (i) 的 CAPETOWN 或 FLORIDA。我该怎么做?
您必须直接在正则表达式字符串中设置 OR。
db.collection.aggregate([
{
$match: {
"hometown": {
$regex: "CAPETOWN|FLORIDA",
$options: "i"
}
}
}
])