在MongoDb中使用JSON出现“正则表达式无效:缺少)”错误

时间:2018-09-18 13:25:10

标签: json mongodb mongoose jongo

我正在运行下面给出的查询。

db.CollectionName.find({'serviceName':{'$regex':'^(ALBUMIN$','$options':'si'}})

我遇到以下错误。

Error: error: {
    "ok" : 0,
    "errmsg" : "Regular expression is invalid: missing )",
    "code" : 2,
    "codeName" : "BadValue"
}

由于方括号可以在字符串中的任何位置,如何避免此错误? 像-((ALBUMIN或((ALBUMIN)等。

1 个答案:

答案 0 :(得分:1)

您需要转义字符。您可以使用 \ 在正则表达式中转义特殊字符。因此,对于您的情况,就像

db.CollectionName.find({'serviceName':{'$regex':'^\\(ALBUMIN$','$options':'si'}})

您随时可以在https://regex101.com/上测试正则表达式。