javascript - mongoDB - 针对部分字段值的正则表达式搜索
问题描述
我在国家对象中有国家呼叫代码的国家集合。如何使用带有手机号码的呼叫代码查找国家/地区?
const countries = [
{
name: 'UAE',
callingCode: 971
},
{
name: 'USA',
callingCode: 1
},
{
name: 'UK',
callingCode: 44
}
];
const number = '971524500000'; // Input
如何使用 mongoose javascript 中的正则表达式找到给定手机的国家/地区;
解决方案
[ https://en.wikipedia.org/wiki/List_of_country_calling_codes][1]
查看上面有关国家/地区呼叫代码的链接,具体请参见“树列表”部分。
一种解决方案是基于这棵树在 Mongo 中实现一个模式,以便解码国家代码。
因此,可以创建一个表来存储包含字段“1x”“2x”“21x”等(树列表表中的 Y 轴)的 Mongo 文档。
这些文档中的每一个都可以包含从 x=0 到 x=9(树列表表中的 x 轴)的子文档数组。子文档可以包含您要查找的国家/地区名称/代码。您可以在 Mongo 文档中使用对数组的直接索引来进行有效查找。
我认为您会发现这是一个非常有效的实现,并且应该涵盖所有基础。
推荐阅读
- javascript - React 17 - 无法读取未定义的属性“道具”
- r - 每 n 列 (R) 子集数据帧
- .net - 支持 docker 的 Blazor WebAssembly 应用程序 (linux)
- swift - SwiftMessage:当用户在消息视图之外点击时如何处理动作?
- python - Python函数循环浏览文件夹中的PDF,并查找关键字
- c# - 如何使动态创建的对象的事件处理程序引用另一个类中的 DGV 对象?
- python - 文本清理后在 python 中的 pandas 列中保存更改
- mysql - For 循环在第一次迭代后停止
- python - tf-nightly-gpu 在整个训练过程中的性能下降
- javascript - Vuex 状态中的 Javascript 类中缺少方法