我在编写一个返回mongodb中所有大写五字母代码的查询时遇到了麻烦。到目前为止我有这个:
db.foo.find({f : {$regex : [/[A-Z]{5}/] } }).count()
这是不正确的,因为它返回的结果是整个集合的大小,我知道至少有4000个条目不是大写的。我没有太多使用正则表达式的经验,所以我很难看出出了什么问题。
答案 0 :(得分:5)
我认为你的正则表达式错了,试试:
db.foo.find({f : {$regex : /[A-Z]{5}/ } }).count()
答案 1 :(得分:2)
除非您尝试一次执行多个$操作,否则不需要$regex
运算符。
db.foo.find({f: /[A-Z]{5}/})
工作得很好。