gpt4 book ai didi

c# - 电话号码验证

转载 作者:行者123 更新时间:2023-11-30 13:30:41 25 4
gpt4 key购买 nike

我有这段验证电话号码的代码,但它看起来有点笨拙。我猜想有更好的方法来解决这个问题。我怎样才能使它更有效率?

public static bool validTelephoneNo(string telNo)
{
bool condition = false;
while (condition == false)
{
Console.WriteLine("Enter a phone number.");
telNo = Console.ReadLine();
if (telNo.Length > 8)
{
if (telNo.StartsWith("+") == true)
{
char[] arr = telNo.ToCharArray();
for (int a = 1; a < telNo.Length; a++)
{
int temp;

try
{
temp = arr[a];
}

catch
{
break;
}

if (a == telNo.Length - 1)
{
condition = true;
}
}
}
}
}
return true;
}

最佳答案

不要自己尝试这样做,使用已经有人为您完成艰苦工作的库,例如 libphonenumber .

例子:

public static bool validTelephoneNo(string telNo)
{
PhoneNumber number;
try
{
number = PhoneNumberUtil.Instance.Parse(telNo, "US"); // Change to your default language, international numbers will still be recognised.
}
catch (NumberParseException e)
{
return false;
}

return number.IsValidNumber;
}

此库将处理来自不同国家/地区的电话号码的解析和格式化。这不仅可以确保号码在相关国家/地区有效,还可以让您过滤掉付费号码和“假”号码(例如美国的 555)。

关于c# - 电话号码验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29941002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com