如何在 MongoDB 中查找具有特殊字符的数据

Posted

技术标签:

【中文标题】如何在 MongoDB 中查找具有特殊字符的数据【英文标题】:How to find Data with Special Character in MongoDB 【发布时间】:2021-12-23 00:28:00 【问题描述】:

我需要在我使用 (和) 括号的示例中找到包含任何特殊字符的数据和数据,但它可以是任何。另外,我需要精确地与数据进行区分大小写的匹配。 样本数据:

[
   
      "cat_id":1,
      "categoryCode":"categoryCode1",
      "categoryName":"categoryName (Special Box)",
   
]

预期输出:

[
   
      "cat_id":1,
      "categoryCode":"categoryCode1",
      "categoryName":"categoryName (Special Box)",
   
]

当我使用查询时-

db.collection.aggregate([
$match:
"categoryName":$regex:"categoryName (Special Box)"

])

我在响应中得到 No data found 怎么办?

【问题讨论】:

【参考方案1】:

你只需要escape special characters,就像这样:

db.collection.aggregate([
    
        $match: 
            "categoryName": 
                $regex: "categoryName \(Special Box\)"
            
        
    
])

【讨论】:

如何在动态的输入字符串中使用 \ this 是一个关于如何“动态”执行此操作的示例。

以上是关于如何在 MongoDB 中查找具有特殊字符的数据的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB查询:如何查找嵌套对象中的字符串

如何解析iOS中具有特殊字符的xml数据?

如何使用聚合 MongoDB 查找具有两列的不同字段

如何在mongodb聚合中查找搜索字符串的出现次数?

如何在 MongoDB 中查找文档、更新文档并插入新文档?

如何在 MongoDB 中查找文档、更新文档并插入新文档?