我可以使用正则表达式删除 mongodb 的文档吗?

问题描述 投票:0回答:3

我还没有找到方法。 如果我们不能使用 regex 表达式删除文档,我们可以做些什么来完成它?为什么 mongodb 不提供这样的驱动程序?

mongodb mongodb-query
3个回答
15
投票

.remove()
方法只接受一个查询对象,所以正则表达式只是MongoDB的标准查询:

db.collection.remove({ "field": /^string/ })

删除任何以“字符串”开头的“字段”

同时查看

$regex
的文档。


1
投票

可以使用

remove()
方法和
$regex
查询删除文件。

例如

db.users.remove({"email" :  { $regex : /$test/}})

它将删除所有以“测试”开头的用户电子邮件。

db.users.remove({"email" :  { $regex : /@yopmail.com$/}})

它将删除所有以“yopmail.com”结尾的用户电子邮件

详细说明这里,mongoDB官网


0
投票

我用过deleteMany方法:

db.collection.deleteMany({ "field": /^string/ })
© www.soinside.com 2019 - 2024. All rights reserved.