我正在使用Googles Phone Number Library在文本文件中查找电话号码。该电话号码可以是任何格式或来自任何国家/地区。正则表达式没有解决问题。我在3rd party python version编码, 但它不是那么好,我找不到使用FindNumbers功能的方法。如何在Java中使用它甚至更好地在python中使用它?
这是一个例子:440-991-6659(F)
答案 0 :(得分:0)
在您链接到的python端口中,有一个PhoneNumberMatcher
类提供FindNumbers
功能。代码为here。
从项目的自述文件:
有时候,你有一个更大的文本块,可能有也可能没有 里面有一些电话号码。为此,PhoneNumberMatcher对象 提供相关功能;你可以迭代它 检索一系列PhoneNumberMatch对象。每个都匹配 对象包含PhoneNumber对象以及有关的信息 匹配发生在原始字符串中。
>>> text = "Call me at 510-748-8230 if it's before 9:30, or on 703-4800500 after 10am." >>> for match in phonenumbers.PhoneNumberMatcher(text, "US"): ... print match ... PhoneNumberMatch [11,23) 510-748-8230 PhoneNumberMatch [51,62) 703-4800500 >>> for match in phonenumbers.PhoneNumberMatcher(text, "US"): ... print phonenumbers.format_number(match.number, phonenumbers.PhoneNumberFormat.E164) ... +15107488230 +17034800500