mongo的find方法,用正则无法找到数字?

数据库里一共4条数据
image.png
查询非数字可以得到结果
image.png
image.png
但是查询数字,结果为空,这是为什么呢?
image.png
image.png
数字是有什么特别的讲究吗?
另外用.+也无法匹配到数字
image.png

==============大佬给的结果,可以成功查询=====
image.png

阅读 1.6k
1 个回答

你存的时候这个12不是字符串,是Number吧,

db.xxx.find({
    "$expr": {
        "$regexMatch": {
           "input": {"$toString": "$name"}, 
           "regex": /12/ 
        }
    }
});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏