English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Methode zur Validierung von Handynummern (Regulärer Ausdruck)

Nur Ziffern sind erlaubt

<xsl:attribute name="onkeyup">value=value.replace(/[^\d]//xsl:attribute>
<xsl:attribute name="onbeforepaste">clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))</xsl:attribute>
//Eine Festnetznummer muss nur eine ausgefüllt werden
$('.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; 
    }
  )

Sehen wir uns den neuesten regulären Ausdrucksweise zur Überprüfung der Handynummer an

Da die Handynummern kontinuierlich aktualisiert werden, ist die frühere reguläre Ausdrucksweise nicht mehr ausreichend. Diese Ausdrucksweise neu schreiben, Datenquelle der Nummernblöcke:http://www.jihaoba.com/tools/haoduan/

Bestehende Handynummern:

China Mobile:139   138   137   136   135   134   147   150   151   152   157   158    159   178  182   183   184   187   188 
China Unicom:130   131   132   155   156   185   186   145   176 
Telekommunikation:133   153   177   173   180   181   189

Virtueller Netzbetreiber:

170  171

Verarbeitet:

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}$/, "Falsches Telefonformat");

Ausdrucksanalyse:

“/” bedeutet eine reguläre Ausdrucksweise.

“^” bedeutet den Anfang eines Strings, “$” bedeutet das Ende eines Strings.

“? bedeutet, dass die vorherigen Zeichen eine oder keine Zeichen entsprechen können, daher hier 0? bedeutet, dass die Handynummer mit 0 beginnen kann oder nicht.

der nächsten Teil der Überprüfung11Stellen der Handynummer, zuerst von13beginnt, weil von130-139sind also die可选区间 ist [0-9]15Nummern, die mit154also gibt es in [] keine4dieser Zahl, natürlich auch als [0-35-9], unten18und14geöffneten Nummern sind wie oben beschrieben.

kleine Klammern umschlossene repräsentieren einen Unterausdruck, darin ist4optionalen Zweige mit "|" getrennt, in der Regular Expression hat "|" die niedrigste Priorität, hier werden alle Zweige durch3Zeichen (ein [] kann nur ein Zeichen auswählen, darin ist die Option), also ist es das的前3Ziffern sein, dann gibt es noch8Ziffern müssen übereinstimmen, es kann 0-9der beliebige Zeichen sind, also ist es "[0-9]}{8}

Analyse abgeschlossen.

Wenn es einen großen Teufel gibt, der vorher schreibt86,17951dieser Art?

/^(0|86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57]})(0-9]}{8}$/

C# Version:

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}$);
    }

Die folgenden sind von mir vorgestellten Methoden zur Überprüfung von Handynummern (Regulärer Ausdruck), ich hoffe, sie sind für alle nützlich. Wenn jemand Fragen hat, hinterlasse bitte eine Nachricht, ich werde rechtzeitig antworten. Ich möchte auch sehr herzlich für die Unterstützung der Website "Ruf zu den Lehrmitteln" danken!

Empfohlene Artikel