我正试图找到一段匹配货币值的正则表达式。
我只想匹配数字和 1 个小数点即
允许
- 10
- 100
- 100.00
不允许
- 字母字符
- 100,00
- +/- 100
我已经搜索并尝试了很多但没有任何运气。
希望大家多多指教
最佳答案
if (preg_match('/^[0-9]+(?:\.[0-9]+)?$/', $subject))
{
# Successful match
}
else
{
# Match attempt failed
}
旁注:如果你想限制你想要的小数位数,你可以这样做:
/^[0-9]+(?:\.[0-9]{1,3})?$/im
所以
100.000
将匹配,而
100.0001
不会。
如果您需要任何进一步的帮助,请发表评论。
PS 如果可以,请使用上面发布的数字格式化程序。 native 功能总是更好(更快),否则此解决方案将为您提供良好的服务。
关于PHP 货币正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/814973/