Получение сообщения «Недопустимое регулярное выражение: отсутствует)» при использовании json в MongoDb - PullRequest
0 голосов
/ 18 сентября 2018

Я выполняю запрос, указанный ниже.

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

Я получаю следующую ошибку.

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

Как можно избежать этой ошибки, так как скобка может находиться в любом месте строки?Like- (ALBUMIN или ((ALBUMIN) и т. Д.

1 Ответ

0 голосов
/ 18 сентября 2018

Вам нужно экранировать символ (. Вы можете использовать \ для экранирования специальных символов в регулярном выражении. Так что для вашего случая это будет похоже на

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

Вы всегда можете проверить свои регулярные выражения на https://regex101.com/ всякий раз, когда вы его используете.

...