📜  在 c# .net 中格式化电话号码 - C# (1)

📅  最后修改于: 2023-12-03 15:07:37.492000             🧑  作者: Mango

在 C# .NET 中格式化电话号码

在 C# 中,我们可以使用一些函数和库来格式化电话号码。在这篇文章中,我们将介绍如何以一种标准的且易于阅读的格式来显示电话号码。

使用 String.Format 格式化电话号码

我们可以使用 String.Format 函数来格式化电话号码。以下是一个简单的示例,展示了如何使用 String.Format 函数来格式化电话号码。

string phoneNumber = "1234567890";
string formattedPhoneNumber = String.Format("{0:(###) ###-####}", double.Parse(phoneNumber));
Console.WriteLine(formattedPhoneNumber);
  • {0:(###) ###-####}:格式化字符串,定义一个带有括号和连字符的格式。 转义字符 # 表示任意数字。

输出将是 (123) 456-7890

使用 Regex 替换电话号码中的分隔符

我们可以使用 Regex (正则表达式)来替换电话号码中的分隔符。以下是一个示例,展示了如何使用 Regex.Replace 函数来替换电话号码中的分隔符。

string phoneNumber = "123-456-7890";
string normalizedPhoneNumber = Regex.Replace(phoneNumber, "[^0-9]", "");
Console.WriteLine(normalizedPhoneNumber);
  • [^0-9]:正则表达式,表示除数字外的所有字符。
  • "":用于替换匹配的字符。

输出将是 1234567890

使用 PhoneNumbers 库解析和格式化电话号码

我们可以使用 Google 的 libphonenumber 库来解析和格式化电话号码。以下是一个示例,展示了如何使用 PhoneNumbers.Parse 函数来解析电话号码,并使用 PhoneNumberUtil.Format 函数来格式化电话号码。

using Google.PhoneNumbers;

string phoneNumber = "123-456-7890";
PhoneNumberUtil phoneUtil = PhoneNumberUtil.GetInstance();
PhoneNumber parsedPhoneNumber = phoneUtil.Parse(phoneNumber, "US");
string formattedPhoneNumber = phoneUtil.Format(parsedPhoneNumber, PhoneNumberFormat.NATIONAL);
Console.WriteLine(formattedPhoneNumber);

输出将是 (123) 456-7890

以上就是 C# .NET 中格式化电话号码的三种方法。您可以根据您的需要选择一种方法来解决电话号码格式化问题。