Mongodb 管道。所有管道均不适用于特殊字符,如;(“在过滤器中
我试图使用Mongodb 管道。所有管道均不适用于特殊字符,如;(“在过滤器中,mongodb,go,Mongodb,Go,我试图使用c.Pipe查询Golang中的MongoDB数据库,但是响应总是空的,尽管数据库中有(“名称”:“测试用例(括号)” pipe := c.Pipe([]bson.M{{"$match": bson.M{"name":"("}}}) resp := []bson.M{} err := pipe.All(&resp) if err != nil { //handle error } fmt.Println(resp) // Empty resp 您应该需要一个查询来
c.Pipe
查询Golang中的MongoDB数据库,但是响应总是空的,尽管数据库中有(“名称”:“测试用例(括号)”
pipe := c.Pipe([]bson.M{{"$match": bson.M{"name":"("}}})
resp := []bson.M{}
err := pipe.All(&resp)
if err != nil {
//handle error
}
fmt.Println(resp) // Empty resp
您应该需要一个查询来查询包含字符
(
)的名称。正则表达式应该是*(.*
pipe:=c.pipe([]bson.M{{map[$match:map[name:map[$options:i$regex:(]]]})一个小的更改,我正在使用正则表达式来过滤映射[$match:map[name:map[$options:i$regex:.\(.]]]]使用这个正则表达式,它工作了:)pipe:=c.pipe([]bson.M{map[$match:map[name:map[$options:i$regex:(]]]}})一个小改动,我正在使用regex来过滤map[$match:map[name:map[$options:i$regex:.*(.]]),仍然是相同的结果map[$match:map[name:map[$options:i$regex:.*\(.*]]使用了这个regex,它起了作用:)对不起,忘记转义这个字符。