^[-+]?(d+(.d*)?|.d+)[dD]?$ 可以带正负号的,任意位小数的实数 (d*(,d{3})*(.(d{3},)*d+)?) 不带正负号,可以带任意位小数的实数,但是有bug,如果给小数写上千分位,也能通过验证 第一次优化 ^[-+]?(d*(,d{3})*(.(d{3},)*d+)?|.d+)[dD]?$ bug依旧 第二次优化 ^[-+]?(d*(,d{3})*(.d+))[dD]?$ bug消除了 最后试了试貌似这样也可以 ^[-+]?(d*(,d{3})*.(d+)?) 最终解决方案,暂时还没有发现bug ^[-+]?(d*(,d{3})*.(d+)?)