16

Java で電話番号形式の API を求めるこの質問は、なぜそのような API が存在しないように思われるのか疑問に思いました。Apache Commonsで利用可能な検証クラスの数を考えると、そのような API が含まれると思っていたでしょう。

私の質問は、小規模な Java オープン ソース プロジェクトのモデルとして使用できる任意の言語で利用可能な電話番号のフォーマット/検証ライブラリを知っている人はいますか? また、世界中で使用されている多数の異なる電話番号形式以外に、そのようなプロジェクトが実行不可能になる理由を誰か知っていますか?

4

6 に答える 6

25

Googleは最近、国際電話番号の解析、フォーマット、保存、検証のためのlibphonenumberをリリースしました。

于 2011-01-05T13:57:00.670 に答える
13

このような API は任意の言語で: Number::Phone (サブモジュールの例: Number::Phone::US )。

データ: ITU のNational Numbering Plansインデックス。

于 2009-02-01T19:18:50.727 に答える
3

http://www.geonames.org/には、ダウンロードできるデータベースがあり、国情報データセットに含まれる電話番号の正規表現ルールがあります。

http://download.geonames.org/export/dump/

「countryInfo.txt」ファイルを探します。

それに基づいて独自のバリデーターを作成することをお勧めします。

于 2010-06-02T21:03:14.177 に答える
0

ここでParsify形式をチェックできます - https://www.mashape.com/parsify/format#endpoint-Phone-Number

あなたの番号をいくつかの形式で返します。

{ "e164": "+1234567890", "national": "234567890", "international": "+1 234567890", "valid": false, "type": "UNKNOWN" }

実数ならより広範囲な応答が得られる

于 2013-02-28T06:33:53.490 に答える
0

他の質問への回答で言われたように、Java については誰も見たことがありません。また、あなたが言ったように、世界中の電話番号の形式が異なるため、ほとんど不可能です。

また、対象とする地域のさまざまな形式がわかっている場合は、通常、正規表現で簡単に実装できます。

于 2009-02-01T19:15:24.570 に答える
-3

電話番号入力欄:

<input class="left" id="field" name="field" />

jquery スクリプト:

jQuery.validator.addMethod("phoneUS", function(phone_number, element) { phone_number = phone_number.replace(/\s+/g, ""); return this.optional(element) || phone_number.length > 9 && phone_number. match(/^(1-?)?(([2-9]\d{2})|[2-9]\d{2})-?[2-9]\d{2}-?\ d{4}$/); }, "有効な電話番号を指定してください");

于 2012-09-13T12:21:23.387 に答える