-8
Pattern regex = Pattern.compile("^\\d{0,8}\\.\\d{0,4}$");

動作していますが、5000 などの値を入力すると動作するはずです。基本的に有効な値は「99999999.9999」以下である必要があります。

値が「123456789」の場合は無効です。

小数点は必須ではありません。

助けてください。

4

2 に答える 2

4

すべての浮動小数点数には多くの異なる表現(、、、100など)があるため100.0、数値1e2を解析してdoubleから、数値比較を使用して、目的の範囲内にあるかどうかを確認することをお勧めします。

于 2012-11-22T13:58:53.270 に答える
3

小数部をオプションにする

^\d{0,8}(\.\d{0,4})?$

でも私はあなたが意味するの12345678

^\d{0,9}(\.\d{0,4})?$

しかし、私は1小数点以下の数字を少なくとも持つことを提案しているので、ユーザーが入力しようとする123.と失敗します

^\d{0,9}(\.\d{1,4})?$
于 2012-11-22T13:57:44.777 に答える