Đây là phiên trình bao MongoDB của tôi;MongoDB regex phù hợp với sự cố
> db.foo.save({path: 'a:b'})
WriteResult({ "nInserted" : 1 })
> db.foo.findOne()
{ "_id" : ObjectId("58fedc47622e89329d123ee8"), "path" : "a:b" }
> db.foo.save({path: 'a:b:c'})
WriteResult({ "nInserted" : 1 })
> db.foo.find({path: /a:[^:]+/})
{ "_id" : ObjectId("58fedc47622e89329d123ee8"), "path" : "a:b" }
{ "_id" : ObjectId("58fedc57622e89329d123ee9"), "path" : "a:b:c" }
> db.foo.find({path: /a:[a-z]+/})
{ "_id" : ObjectId("58fedc47622e89329d123ee8"), "path" : "a:b" }
{ "_id" : ObjectId("58fedc57622e89329d123ee9"), "path" : "a:b:c" }
Rõ ràng regex /a:[^:]+/
và /a:[a-z]+/
không nên phù hợp với chuỗi 'a:b:c'
, nhưng trông giống như Mông Cổ thất bại trên regex này, không ai biết chuyện gì xảy ra ở đây?
Nó đã được gửi đến MongoDB Jira, as a bug ticket, do đó, nó là một lỗi trong cấu trúc truy vấn MongoDB?