\s
Подстановочный знак regex не соответствует всем типам пробелов в mongodb (v4.0.3)
> db.test.insertOne({ "mail" : "special email@example.com" })
> db.test.insertOne({ "mail" : "normal email@example.com" })
> db.test.find({ mail: / / }, { _id: 0, mail: 1 })
{ "mail" : "special email@example.com" }
> db.test.find({ mail: /\s/ }, { _id: 0, mail: 1 })
{ "mail" : "normal email@example.com" }
Пробел
в special email@example.com
выше - это специальный пробел, а нормальный пробел в normal email@example.com
Это ожидаемое или ошибка? Есть ли способ сделать так, чтобы он совпадал со всеми пробелами?
Sidenote: я использую регулярное выражение внутри $not
, поэтому я не могу использовать $regex
Редактировать : Четный [^\S]
не соответствует обеим строкам
> db.test.find({ mail: /[^\S]/ }, { _id: 0, mail: 1 })
{ "mail" : "normal email@example.com" }
Может ли регулярное выражение mon go работать только с ASCII?