携帯電話番号を確認する必要があります。私の必要性:
- 番号は+8801または8801または01で始まる場合があります
- 次の番号は1または5または6または7または8または9にすることができます
- 次に、正確な8桁があります。
この条件を使用して正規表現を作成するにはどうすればよいですか?
私が試した携帯電話番号
+8801811419556
01811419556
8801711419556
01611419556
8801511419556
携帯電話番号を確認する必要があります。私の必要性:
- 番号は+8801または8801または01で始まる場合があります
- 次の番号は1または5または6または7または8または9にすることができます
- 次に、正確な8桁があります。
この条件を使用して正規表現を作成するにはどうすればよいですか?
私が試した携帯電話番号
+8801811419556
01811419556
8801711419556
01611419556
8801511419556
かなり単純なはずです:
^(?:\+?88)?01[15-9]\d{8}$
^
-文字列の先頭から(?:\+?88)?
-オプション88
、で始まる場合があります+
01
- 必須01
[15-9]
-「1または5または6または7または8または9」\d{8}
-8桁$
-文字列の終わり実例: http: //rubular.com/r/BvnSXDOYF8
2020年の更新
BTRCが2つの新しいプレフィックス、Grameenphone用の013とBanglalink用の014を承認したため、今のところ式を更新しました。
^(?:\+?88)?01[13-9]\d{8}$
バングラデシュの携帯電話番号を検証するために、指定された正規表現のいずれかを使用できます。
解決策1:
/(^(\+88|0088)?(01){1}[56789]{1}(\d){8})$/
Robi、Grameen Phone、Banglalink、Airtel、Teletalkオペレーターの携帯電話は許可されていません。
解決策2:解決策2:
/(^(\+8801|8801|01|008801))[1|5-9]{1}(\d){8}$/
Citycell、Robi、Grameen Phone、Banglalink、Airtel、Teletalkオペレーターの携帯電話は許可されていません。
許可される携帯電話番号パターン
+8801812598624
008801812598624
01812598624
01712598624
01919598624
01672598624
01512598624
..................。
................。
その質問はずっと前に尋ねられたのは知っていますが、@ GMNazmulHossainは選択した国で携帯電話番号を再度検証したいと思っていると思います。グーグルの無料ライブラリlibphonenumberでそれを行う方法をお見せします。Java、C ++、Javascriptで利用できますが、PHPや他の言語用のフォークもあります。
+880は、バングラデシュの国コードであることを示しています。Javascriptの次のコードを使用して、サンプル番号を検証してみましょう。
String bdNumberStr = "8801711419556"
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
//BD is default country code for Bangladesh (used for number without 880 at the begginning)
PhoneNumber bdNumberProto = phoneUtil.parse(bdNumberStr, "BD");
} catch (NumberParseException e) {
System.err.println("NumberParseException was thrown: " + e.toString());
}
boolean isValid = phoneUtil.isValidNumber(bdNumberProto); // returns true
このコードは、スペースが含まれる数値(たとえば、「880 17 11 41 95 56」)、または最初に00880を含む数値(+は00に置き換えられることもあります)も処理します。
デモページで試してみてください。提供されているすべての例とそれ以上を検証します。
https://code.google.com/p/libphonenumber/でlibphonenumberを ご覧ください。
バングラデシュの電話番号(Citycell、Robi、Grameen Phone、Banglalink、Airtel、Teletalkの 演算子)正規表現を使用した検証:
$pattern = '/(^(\+8801|8801|01|008801))[1-9]{1}(\d){8}$/';
$BangladeshiPhoneNo = "+8801840001417";
if(preg_match($pattern, $BangladeshiPhoneNo)){
echo "It is a valid Bangladeshi phone number;
}
**Laravel Bangladeshi Phone No validation for (Citycell, Robi, Grameen Phone, Banglalink, Airtel and Teletalk) and start with +88/88 then 01 then 356789 then 8 digit**
public function rules()
{
return [
'mobile' => 'sometimes|regex:/^(?:\+?88)?01[35-9]\d{8}$/',
];
}
public function messages()
{
'mobile.regex' => 'Mobile no should be bd standard',
];
}