移动电话号码长度,取决于下拉列表中选择的国家/地区名称

时间:2014-01-31 09:26:51

标签: c# asp.net validation

在我的asp.net应用程序中,我必须根据下拉列表中选择的国家/地区名称使用验证手机号码。

我已经google了解决方案,但无法找到确切的解决方案。

有人可以与我分享有用的链接或信息吗?

1 个答案:

答案 0 :(得分:1)

简答:

你不能(除非你只限于一个非常特定的国家子集)。

答案很长:

电话系统太多样了 - 简而言之 - 非标准化,无法创建一个“全能”解决方案。

虽然有些国家(例如美国)有固定长度的数字,但其他国家/地区,例如德国,可变长度。

例如,德国固定电话的区号始终为5位数(如果您从其他国家/地区拨打电话,则为4位数)。但是,对于手机,它总是4位数(从另一个国家拨打3位数字)。

实际(本地)电话号码可以是3位数到7位或更多位。

我的父母有一个他们很久以前的电话 - 4位数(总共9位数字区号)。如果我今天得到一份新合同,我最有可能会得到6位或7位数(总共12位数)。

你能做什么

您可以尝试使用正则表达式(请参阅Shekhar上面的评论)来验证正确的格式(例如,包括国家/地区选择),而不是检查完整的数字。虽然这不是一个完美的解决方案,但它应该可以帮助您避免意外混淆输入用户。