ホームページ >ウェブフロントエンド >jsチュートリアル >携帯電話番号の定期認証(コード付き)について詳しく解説
今回は、携帯電話番号の定期認証についての詳しい説明(コード付き)をお届けします。携帯電話番号の定期認証の注意事項は何ですか?実際のケースを見てみましょう。
数字のみが許可されています
<xsl:attribute name="onkeyup">value=value.replace(/[^\d]/g,'')</xsl:attribute> <xsl:attribute name="onbeforepaste">clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))</xsl:attribute>
//固定电话只要有一个填写即可 $('.form-inline').submit(function(){ var m = $('input[name=mobile]').val(); var p = $('input[name=phone]').val(); var reg = /^1\d{10}$/; if((m == "" || !reg.test(m)) && p == ""){ $('input[name=mobile]').addClass('error_color'); $('input[name=mobile]').tooltip('show'); return false; }else{ $('input[name=mobile]').removeClass('error_color'); $('input[name=mobile]').tooltip('hide'); return true; } })
最新の携帯電話番号認証を見てみましょう正規表現
携帯電話番号セグメントは継続的に更新されているため、以前の正規表現はもはやニーズを満たしていません。この式を書き換えます。番号セグメントのデータ ソースは http://www.jihaaba.com/tools/haoduan/
既存の携帯電話番号セグメント:
Mobile: 139 138 137 136 135 134 147 150 151 152 157 158 159 178 182 183 184 187 188
チャイナユニコム: 130 131 132 155 156 185 186 145 176
電気通信: 133 153 177 173 180 181 189
仮想オペレーター:
170 171
並べ替え後:
130~139 145,147 15[012356789] 178,176,177,173,170,171 180~189
var regex = { mobile: /^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/ }
js:
var bool = checkRegexp(jq("#mobile"), /^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/, "电话格式不对");
式解析:
「/」は正規表現を表します。
「^」は文字列の開始位置を表し、「$」は文字列の終了位置を表します。
「?」は前の文字に 1 または 0 を一致させることを意味するため、ここでの 0? は携帯電話番号が 0 で始まるかどうかを意味します。
次の部分は、13 から始まる 11 桁の携帯電話番号を確認することです。番号の範囲は 130 ~ 139 であるため、オプションの範囲は [0 ~ 9] であり、15 で始まる番号には 154 はありません。 [] には数字の 4 がありませんが、[0-35-9] と書くこともできます。次の数字 18 と 14 も上記と同じです。
括弧は部分式を表しており、「|」で区切られた 4 つのオプションの分岐が含まれています。正規表現では、「|」の優先度 が最も低く、ここで一致する各分岐はすべて 3 文字 ([]) です。 1 つの文字 (オプションを意味します) のみと一致します。つまり、携帯電話番号の最初の 3 桁の場合、一致する必要がある 8 桁の数字は 0 ~ 9 の任意の文字であるため、「[0」となります。 -9]{8}"。{} 内の数字は、一致する前の文字の数を表します。
分析が完了しました。
頭の大きな幽霊が表面に 86,17951 のようなことを書いたらどうしますか?
/^(0|86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/
C# バージョン:
using System.Text.RegularExpressions; public static bool IsTelephone(string str_telephone) { return Regex.IsMatch(str_telephone, @"^(0|86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$"); }
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨書籍:
正規表現を使用して文字列を抽出する詳細な説明 (コード付き)
以上が携帯電話番号の定期認証(コード付き)について詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。