我正在尝试在我的 MongoDB 中搜索格式不同的字符串电话号码。
例如(323)704-3234、3237043234、323-704-3234、+1-323-704-3234、323.704.3234等
是否有我可以使用的 MongoDB 提供的运算符或正则表达式,它允许您查找减去特殊字符的字符串?
例如在c#中,
collection.Find(Query.Matches("PhoneNumber",(some regex, replace, or where)3237043234))
最佳答案
对不起,你做错了。
您可以接受任何格式的电话字符串(如果您愿意),但在存储它们之前,您需要将它们转换为某种特定格式。在您的情况下,最好的方法是将其转换为数字(存储的尺寸较小,以创建索引)。
再一次,当用户要求一个号码时——他也可以提供任何格式的号码,在您搜索之前,您会将其转换为号码。 (不要忘记在电话号码字段上放置索引)更加用户友好,您可以以用户要求的相同格式显示输出。
要更改您当前的所有手机,只需遍历数据库并更新每个号码即可。
关于c# - 如何在 MongoDB 中搜索各种格式的电话号码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26220234/