模式
$test = preg_match('/^(?=.\d)\d(?:\.\d\d)?$/', $_float1);
匹配
0.25
2.55
1253.36
45.55
如何修改此接受整数部分之间的逗号? 如1,253.36?
答案 0 :(得分:2)
您可以使用此模式:
/^\d*(,?\d{3})*(\.\d+)?$/
答案 1 :(得分:1)
答案 2 :(得分:1)
我会使用这个:
/^\d{1,3}(?:(,?)\d{3}(\1\d{3})*)?(?:\.\d{2})?$/
说明:
^\d{1,3}
:以1到3位开头(?:(,?)\d{3}(\1\d{3})*)?
:[可选]重复XXX
或,XXX
个模式(仅限其中一个,排除11,111111之类的数字)(?:\.\d{2})?
:[可选]正好两位小数$
:那是所有人匹配
1 - 12 - 123 - 1234 - 12345
1,234 - 12,345 - 123,456 - 1,234,567
1.23 - 12.34 - 123.45 - 1234.56 - 12345.67
1,234.56 - 12,345.67 - 123,456.78 - 1,234,567.89
不匹配:
.1 - .12 - .123
1.2 - 1.234 - 1.2345
12,34 - 123,45 - 1,2345 - 1,2,345 - 1234,567
12,34.56 - 123,45.67 - 1,2345.78