Mai mult
Verificați dacă șirul conține doar cifre
Vreau sa verific daca un "string" conține doar cifre. Am folosit asta:
var isANumber = isNaN(theValue) === false;
if (isANumber){
..
}
Dar a dat seama că acesta permite, de asemenea, +
și -
. Practic, vreau să mă asigur că o "intrare" conține DOAR cifre și nici alte caractere. Din +100 " și " -5
sunt ambele numere, isNaN()
nu este modul corect de a merge.
Poate un regexp este ceea ce am nevoie? Orice sfaturi?
273
10
ce zici
Dacă doriți pentru a sprijini chiar pentru valori float (Dot valori separate), atunci puteți folosi această expresie :
Asta este ceea ce vrei
Aici's un alt interesant, ușor de citit modalitate de a verifica dacă un șir conține numai cifre.
Această metodă funcționează prin divizarea șir într-o matrice folosind răspândirea operator, și apoi folosește
fiecare()
metoda pentru a testa dacă toate elementele (caractere) în matrice sunt incluse în șirul de cifre'0123456789'
:Ei bine, puteți utiliza următoarele regex:
Aici este o soluție fără a folosi expresii regulate:
în cazul în care 48 și 57 sunt char coduri pentru "0" și "9", respectiv.
Deși acest lucru va reveni "false" pe siruri de caractere de conducere sau zerouri la sfârșit.
Dacă un șir conține doar cifre se va intoarce null