正则表达式,长度最大为10的数字,可以是小数

求一个正则表达式,只允许输入数字和小数点,最大长度10。
/^[\d]{0,10}$/ 这样只能是整数啊,怎么才能加上小数...

/^(?=\d+.?\d+$)[\d.]{0,10}$/ 抱歉,刚才的有点问题,没用转意,环视符写错了,现在改好了

这样可以吗:
/^[\d.]{0,10}$/
没测试

有规定小数点在哪一位吗

/^(?\d+.?\d+$)[\d.]{0,10}$/ 这个,加上一个环视,可以保证最多只出现一个点号,如果出现点号,点号前后必须有数字

 String regex = "[\\d]{1,}\\.?[\\d]{1,}";

if(s1.matches(regex)&&s1.length()<=10){
System.out.println("Yes");
}

为什么你们写的我看不懂啊。。。