【发布时间】:2020-04-17 11:04:04
【问题描述】:
在我的例子中,我的 MongoDB 数据库中有键,它们的名称中包含一个点(参见随附的屏幕截图)。我已经读到可以通过这种方式将数据存储在 MongoDB 中,但是驱动程序会阻止使用键中的点进行查询。无论如何,在我的 MongoDB 数据库中,键确实包含点,我必须使用它们。
我现在尝试对查询中的点进行编码(. 到 \u002e),但它似乎不起作用。然后我有了使用正则表达式的想法,用任何字符替换查询中的点,但正则表达式似乎只适用于值而不适用于键。
有没有人有创意如何解决这个问题?例如,我想获得“cve_results.BusyBox 1.12.1”的所有 CVE 编号。
更新 #1: cve_results的结构如下:
"cve_results" : {
"BusyBox 1.12.1" : {
"CVE-2018-1000500" : {
"score2" : "6.8",
"score3" : "8.1",
"cpe_version" : "N/A"
},
"CVE-2018-1000517" : {
"score2" : "7.5",
"score3" : "9.8",
"cpe_version" : "N/A"
}
}}
【问题讨论】:
标签: regex mongodb mongodb-query special-characters