5

電話番号を照合できる照合メソッドをphpで書きたいと思います。

私が持っているケースは、Android デバイスから電話の連絡先番号を取得するアプリを構築したいということです。バックエンドで、電話の連絡先を現在のアプリ ユーザーと照合し、一致する場合は、これらのユーザーを友達として追加します。デバイスにwhatsappアプリを持っているユーザーと電話の連絡先を照合するときのwhatsappのやり方に似ています。

私が今抱えている問題は、国コードまたは先行ゼロの有無にかかわらず電話番号に一致する正規表現を作成する方法です。

アプリで、ユーザーの国と電話番号を尋ねているので、たとえば私の友人が次の値を入力しました: 国: ヨルダン (+962) 電話番号: 799633999

私が友人の番号を 0799633999 と話していると仮定すると、0799633999 と +96279963999 を一致させるために使用できる正規表現は何ですか?

4

3 に答える 3

4

あなたの正規表現は#(\+\d+|0)(\d{9})$#

于 2012-04-23T12:05:12.707 に答える
2

これは正規表現では行いません。先頭のゼロと国コードを切り捨て、通常の文字列比較を行います。

連絡先がさまざまな国から来ている可能性がある場合は、友達を探している人の国コードを追加します。

于 2012-04-23T13:07:49.993 に答える
0

この正規表現を使用できるこのリンクを参照してください。

^([0|\+[0-9]{1,5})?([7-9][0-9]{9})$

phpコード:

$re = '/^([0|\+[0-9]{1,5})?([7-9][0-9]{9})$/';
$str = '+2529371208646';

preg_match_all($re, $str, $matches);

print_r($matches);
于 2016-10-03T08:27:37.873 に答える