die überprüfung eines string ist die nicht-negative ganze Zahl, die in javascript
Dies ist eine Lösung, die für die Validierung eine ganze Zahl. Kann mir bitte jemand erklären, die Logik der Karims Antwort.
Das funktioniert perfekt, aber ich bin nicht in der Lage zu verstehen, wie.
var intRegex = /^\d+$/;
if(intRegex.test(someNumber)) {
alert('I am an int');
...
}
- Ich denke, diese Frage sollte besser mit einem Kommentar auf diese Antwort... und die beantwortet werden sollten, gibt es von @Karim sich.
- Beachten Sie, dass dieser code ist nicht ganz korrekt. Zum Beispiel, es prüft eine Zeichenfolge wie
000...(10,000 times)..000
das ist kaum eine "Nummer".
Du musst angemeldet sein, um einen Kommentar abzugeben.
Regex:
/^\d+$/
wenn Sie alle kombiniert:
Vom Beginn der Zeichenfolge an, am Ende gibt es eine oder mehrere zahlen, char[0-9] und Zahl nur.
Check-out einen Regulären Ausdruck Referenz: http://www.javascriptkit.com/javatutors/redev2.shtml
Was ist eine nicht-negative Ganze Zahl?
In anderen Worten, Sie suchen, um zu validieren, die eine nicht negative ganze Zahl.
Den oben genannten Antworten sind unzureichend, weil Sie nicht enthalten Ganzzahlen wie
-0
und-0000
, die, technisch gesehen, nach der Analyse, werden nicht negative Ganzzahlen. Die anderen Antworten auch nicht überprüft werden Ganzzahlen, die mit+
vor.Können Sie die folgende regex für die Validierung:
Versuchen Sie es Online!
Erklärung:
Den folgenden test-Fällen true zurück:
-0
,-0000
,0
,00000
,+0
,+0000
,1
,12345
,+1
,+1234
.Die folgenden Testfälle return false:
-12.3
,123.4
,-1234
,-1
.Hinweis: Dieser regex funktioniert nicht für ganze Zeichenketten, die in der wissenschaftlichen notation.
Diesem regex kann besser
/^[1-9]+\d*$/
Wird auch testen, gegen nicht-negativen ganzen zahlen, die sind pre-gepolstert mit Nullen