当前位置: 首页 > 面试题库 >

Java电话号码格式API

宋康安
2023-03-14
问题内容

我有一个数据库,其中包含数以百万计的免费格式的电话号码。即,UI不强制执行任何约束,并且用户正在键入他们想要的任何内容。

我正在寻找的是一种Java API,可以尽力将它们转换为一致的格式。理想情况下,API将采用自由文本值和国家/地区代码,并产生有效的国际电话号码或引发异常。

例如,系统中的电话号码可能类似于以下任何一项:

(555) 478-1123
555-478-1123    
555.478.1123
5554781123

给定美国所在的国家/地区,API将为所有这些产生值“ +1(555)478-1123”。确切的格式无关紧要,只要它是一致的即可。

系统中也有不带区号的数字,例如“ 478-1123”。在那种情况下,我期望NoAreaCodeException或类似的东西。

也可能有诸如“ abc”之类的数据,该数据也应引发异常。

当然,我发布的示例有无数种变化,以及国际电话号码的巨大复杂性,它们具有相当复杂的验证规则。这就是为什么我不考虑自己动手做的原因。

有没有人看过这样的API?


问题答案:

您可以编写自己的代码(适用于美国电话#格式):

  • 从字符串中去除所有非数字字符
  • 检查剩余的字符串是否为十个字符长
  • 在前三个字符前后加上括号,在第六和第七个字符之间加一个短划线。
  • 在字符串前面加上“ +1”

更新:

谷歌最近发布了libphonenumber,用于解析,格式化,存储和验证国际电话号码。



 类似资料:
  • 问题内容: 我正在使用 SMS应用程序 ,需要能够将发件人的电话号码从 +11234567890转换 为 123-456-7890, 以便可以将其与 MySQL数据库中的 记录进行比较。 数字以后一种格式存储,可在网站上的其他地方使用,我宁愿不更改该格式,因为它将需要修改大量代码。 我将如何使用PHP? 谢谢! 问题答案:

  • 在我的应用程序中,我想创建自己的电话号码格式,但仍然找不到实现这一点的方法。 我阅读了有关电话号码库等的信息,但仍然找不到这样做的方法,因为所有库都可以正常使用、、和其他格式。我想支持,但这些库不能正常工作。 唯一的方法是我必须创建自己的格式。 例如,如果我打字 它必须像这里一样格式化 我找到了IOS操作系统的libs(SHSPhoneTextField),但在Android操作系统中我没有找到。

  • 问题内容: 一旦用户开始将电话号码键入此格式类型,并且我可以正常工作,我就在格式化文本文件中的文本,但是一旦我从服务器上获得了电话号码,我就这样得到了,所以请您告诉我如何编辑它我从服务器获得相同格式的文件吗? 输入开始后的代码: 问题答案: 用String中的字符进行操作不是很简单。您需要遵循以下条件: 斯威夫特2.1 雨燕2.0 代码将打印

  • 问题内容: 我想知道如何使用angularjs指令在输入字段中自动设置数字格式?在输入字段中输入6042919283时,我希望它显示为604-291-9283。 谢谢 问题答案: 您可以使用UI Utils遮罩。 它允许您定义允许的输入格式,并将为您处理验证以及格式设置

  • 我需要在UITextField中显示电话号码格式作为占位符。我怎么能那样做? 对于国家选择,我使用下面提到的库,它提供了针对用户选择的国家的国旗和国家代码。 https://github.com/NikKovIos/NKVPhonePicker 选择国家后,我需要显示所选国家的电话号码格式,提交该电话号码时,我必须验证电话号码。 我还发现,第三方(PhoneNumberKit)的灵感来源于谷歌的l

  • 在我的iOS应用程序中,我必须转换一个电话号码(在联系人),并将其转换为国际格式(自动发送短信与extern库)。我看到了libPhoneNumber,但问题是我们必须输入国家代码,应用程序必须在所有(几乎)国家工作,所以我不知道用户的国家是什么。 以下是图书馆的工作原理: