3 Stimmen

RegularExpression zur Validierung eines Textfeldes, das nur Dezimalzahlen und Zahlen zulassen soll

Ich habe ein Textfeld für 'Area '.Ich brauche einen regularexpression zu validieren Textfeld, so dass es sollte erlauben Dezimalzahlen eingeben, aber keine Zeichen.jemand kann mir helfen

5voto

Zach Hirsch Punkte 22123

Warum nicht etwas ausprobieren, das bereits in JavaScript eingebaut ist: die parseFloat Funktion?

2voto

Christian C. Salvadó Punkte 763569

Diese Regex kann ganze Zahlen und optional Fließkommazahlen validieren:

[0-9]*\.?[0-9]+

Und anstatt reguläre Ausdrücke zu verwenden, können Sie auch isNaN (Wert), um zu prüfen, ob der numerische Wert keine Zahl ist (NaN).

1voto

VonC Punkte 1117238

Welches Format haben die Dezimalzahlen, die Sie in Ihrem Feld unterstützen werden?

Diese "Einfacher regulärer Ausdruck für Dezimalzahlen?" In der StackOverflow-Frage wird die mögliche Regex näher erläutert.

^\d+(\.\d{1,2})?$

Kann eine Zahl mit einer oder zwei Dezimalstellen gewährleisten, funktioniert aber nicht mit 34. (Punkt ohne Komma)

Sie haben viele mögliche Regex hier aufgelistet .

Unkwntech ist eine gute vollständige Regexp, würde aber 1,15223,11,00 zulassen.

Ich würde lieber verwenden:

[-+]?(?:\d(\,?(?>\d{3}[.,]))?)*(?:\.\d*)?

Das heißt, wenn Sie eine , nur dann, wenn sie mit 3 Ziffern gefolgt wird (und dann eine weitere , oder ein Punkt für dezimale Werte. Das erzwingt digitale Gruppierung obwohl es, wie Paul in den Kommentaren anmerkte, Lokale mit mehr als drei Ziffern nach dem Komma gibt...

1voto

UnkwnTech Punkte 83318

Wie wäre es mit

[-+]?(?:\d\,?){0,}(?:\.\d*)?

Er passt auf alle folgenden Ausdrücke, die ein * enthalten:

0*
0.0*
222.0*
1,000.00*
100,000.00*
-100,000,000,000.12*
asdf
blah.blah

0voto

Jomit Punkte 596

Für dezimale Werte müssten Sie auch [.] zulassen, so dass dies für Sie funktionieren sollte:

^[-+]?\d*\.?\d*$

(Dies würde auch + und - Symbole akzeptieren)

Sie können spezifischere Ausdrücke von der RegExLib erhalten aquí .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X