我遇到了一个问题,如下:
{"_id":ObjectId("XXXXXXXX"),"phone":"123456"}
现在我想查询电话字段长度为5的文档。我按如下方式运行命令,
db.Phone.find({"phone":{"$regex":"\d{5}"}})
或
db.Phone.find({"phone":/\d{5}/})
他们都不行。有人可以帮我搞清楚,如何在mongo中使用正则表达式?
答案 0 :(得分:3)
如果您要查找电话号码正好 5位数的文档,则需要使用^
和{{1}将正则表达式锚定到字符串的开头和结尾}:
$
否则,它将匹配字符串中任何位置包含至少5位数字的任何字符串。