2016-10-11 27 views
0

我满足一个问题查询,就像如下:蒙戈:如何用正则表达式中蒙戈

{"_id":ObjectId("XXXXXXXX"),"phone":"123456"} 

,现在我要查询的文件,手机领域的长度为5。我运行命令如下,

db.Phone.find({"phone":{"$regex":"\d{5}"}}) 

db.Phone.find({"phone":/\d{5}/}) 

他们都不起作用。任何人都可以帮我弄清楚,如何在mongo中使用正则表达式?

回答

3

如果你想找到的文档,其中的电话号码是正是 5个数字,你需要锚定正则表达式的字符串的开始和结束与^$

db.Phone.find({phone: /^\d{5}$/}) 

否则会匹配任何在字符串中任何位置的行中至少包含5位数的字符串。

+0

谢谢你!这个对我有用! – DlutAF