2016-05-06 5 views
0

Ich möchte einen numerischen Wert (mit oder ohne Dezimalpunkt) validieren. Wenn ichWas ist der Reguläre Ausdruck für Zahlenwert (mit oder ohne Dezimalzahl) in actionscript3

textInput.restrict = "0-9."; 

verwenden sie nur beschränken, eine Zahl mit 0-9 oder eingeben ‚‘ (Dezimalpunkt). Aber es beschränkt sich nicht darauf, doppelte Dezimalzahl einzugeben (z. B.-123.3.3), die keine gültige Zahl ist.

Also, was sollte die Regex für ein solches Szenario sein? Vielen Dank!

var decimalPattern:RegExp = /^\d+(\.\d+)?$/; 

Oder, wenn Sie bevorzugen:

var decimalPattern:RegExp = new RegExp("^\\d+(\\.\\d+)?$"); 

Dieses Muster sagt „einige Stellen, eventuell gefolgt von einem

+0

Und BMT Formatierung auch erforderlich (B-Milliarden, M-Millionen T -thousand) – Hailey

Antwort

1

Um den regulären Ausdruck in Actionscript 3.0 zu definieren '' und mehr Ziffern ".

Wenn Sie eine generische Lösung wollen, mit Rücksicht auf Dinge wie negative Zahlen und Kommas (zB -13,386.91), dann könnten Sie verwenden: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/validators/NumberValidator.html

+0

können Sie die Token in Regex kurz beschreiben. – Hailey

+0

'\ d' bedeutet" eine Ziffer "(0-9). '+' bedeutet "einen oder mehrere der vorherigen Ausdrücke". '\ .' bedeutet" ein Literal ". Charakter". '?' bedeutet "null oder eins des vorherigen Ausdrucks". '^' und '$' sind Anker, um den Anfang bzw. das Ende einer Zeile zu markieren. Wenn Sie mehr über reguläre Ausdrücke erfahren möchten, dann ist Google Ihr Freund :) –