Lesen zwischen den Zeilen verwenden können, ich die Definition von zulässigen Eingangs erweitert und nicht und angenommen, dass Sie nur die Nummer im beschriebenen Format erfassen wollten.
Zum Beispiel diese Zahlen als die Zahl auf der rechten Seite erfassen würde und sind alle akzeptabel Eingang:
"0.952321 " 0.952321 (trailing spaces stripped)
" 1.20394 " 1.20394 (leading and trailing spaces stripped)
"12.12" 12.12 (no leading or trailing spaces)
"12.123 " 12.123
" .1234 " .1234 (no leading digit -- start with decimal)
"25" 25 (no decimal)
" " " " ? (space. space captured or not)
"12." 12. (1 or 2 digits, decimal, no numbers after decimal)
Nicht OK-Eingang:
"." just a decimal
"123456789" more than 2 digits lefthand
123 "" ""
123.45678
1.1234567 more than 6 digits right hand
[a-zA_Z] not a digit...
Also, da wird diese regex tun es:
/^\s*( # beginning of string and strip leading space
| \d{1,2}\.? # 1 or 2 digits with optional decimal
| \d{0,2}\.\d{1,6} # 0,1, 2 digits with a decimal with digits
| \s+ # remove if you do not want to capture space
)\s*$ # trailing blanks to the end
/x
Welche Sprache verwenden Sie? – miorel
was meinst du mit leer? – PierrOz