是否可以匹配 MongoDB 中字符后面的内容?
Is it possible to match with what comes after a character in MongoDB?
我正在尝试对 mongoDB 进行 match
聚合查询。如果我要匹配的字符串有一个反斜杠,它应该只匹配反斜杠后面的任何内容。
例如,如果数据库中的字符串是Mike\Peter
,我只想匹配Peter
。
$match {
'name': 'Peter'
}
显然这个查询不会匹配,因为Mike\Peter
不匹配Peter
,所以有没有办法检查字符串是否包含\
,如果是,则只匹配之后是什么?
您需要使用$regex
并转义特殊字符。
[
{
"key": "Mike\Peter"
},
{
"key": "Peter"
}
]
db.collection.find({
key: {
"$regex": "\\Peter"
}
})
我正在尝试对 mongoDB 进行 match
聚合查询。如果我要匹配的字符串有一个反斜杠,它应该只匹配反斜杠后面的任何内容。
例如,如果数据库中的字符串是Mike\Peter
,我只想匹配Peter
。
$match {
'name': 'Peter'
}
显然这个查询不会匹配,因为Mike\Peter
不匹配Peter
,所以有没有办法检查字符串是否包含\
,如果是,则只匹配之后是什么?
您需要使用$regex
并转义特殊字符。
[
{
"key": "Mike\Peter"
},
{
"key": "Peter"
}
]
db.collection.find({
key: {
"$regex": "\\Peter"
}
})