Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Pattern regex = Pattern.compile("^\\d{0,8}\\.\\d{0,4}$");
正在工作,但如果我输入值,例如 5000,它应该可以工作。基本上有效值应该等于或小于“99999999.9999”。
如果值为“123456789”,则无效。
小数点不是强制性的。
请帮忙。
由于每个浮点数都有许多不同的表示形式(想想100, 100.0,1e2等),我建议将数字解析为 a double,然后使用数字比较来确定它是否在所需的范围内。
100
100.0
1e2
double
使小数部分可选
^\d{0,8}(\.\d{0,4})?$
但我认为你的意思是直到只有12345678但如果不是
12345678
^\d{0,9}(\.\d{0,4})?$
但我建议1在小数点后至少有一个数字,所以如果用户尝试输入123.它将失败
1
123.
^\d{0,9}(\.\d{1,4})?$