MongoDB查询以查找电话号码不是XXX-XXX-XXXX格式的文档
我有一个集合,其中文档具有XXX-XXX-XXXX这种格式的“phone”字符串字段。但是有一些不同格式的电话号码,所以我们想找出具有不同电话格式的文档。 MongoDB查询以查找电话号码不是XXX-XXX-XXXX格式的文档。尝试以下操作:MongoDB查询以查找电话号码不是XXX-XXX-XXXX格式的文档,mongodb,mongodb-query,Mongodb,Mongodb Query,我有一个集合,其中文档具有XXX-XXX-XXXX这种格式的“phone”字符串字段。但是有一些不同格式的电话号码,所以我们想找出具有不同电话格式的文档。 MongoDB查询以查找电话号码不是XXX-XXX-XXXX格式的文档。尝试以下操作: db.yourCollection.find({ phone: { $not: /^[0-9]{3}-[0-9]{3}-[0-9]{4}$/ } }) 对于以下集合: { "_id" : ObjectId("59
db.yourCollection.find({
phone: {
$not: /^[0-9]{3}-[0-9]{3}-[0-9]{4}$/
}
})
对于以下集合:
{
"_id" : ObjectId("59f059ea2504d6157d58c579"),
"phone" : "123-123-1234"
}
{
"_id" : ObjectId("59f059f92504d6157d58c57a"),
"phone" : "234-234-2345"
}
{
"_id" : ObjectId("59f05a0f2504d6157d58c57b"),
"phone" : "11-111-12222"
}
它返回:
{ "_id" : ObjectId("59f05a0f2504d6157d58c57b"), "phone" : "11-111-12222" }
如果您想进一步限制电话号码,只需调整regex模式。我尝试使用regex。我已经编写了Java代码来确定给定字符串是否为xxx-xxx-xxxx格式,但我想通过查询来完成。