沃梦达 / 编程问答 / php问题 / 正文

如何用Regex检查有效的小数点数字?

how to check valid decimal point number with Regex?(如何用Regex检查有效的小数点数字?)

本文介绍了如何用Regex检查有效的小数点数字?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用下面的字符串检查数字是否有效。

最后2位可以包含小数值,也可以不包含。

下面是我已经使用preg_match尝试过的代码,但未获得任何成功

$newPrice = "2,264.00"; or //  $newPrice = "264.00"; 

 if (!preg_match('/^[+-][0-9]+(,[0-9]+)?%?$/', $newPrice))
{                
    echo "not valid";
 }else{                    
       echo "valid";
}
exit();

以上两种价格按照允许的格式都是正确的。

推荐答案

正则表达式分为3部分;

[0-9]{1,3}     1-3 digits
(,[0-9]{3})*   An optional repeated part of a comma + 3 digits
(.[0-9]{2})?  An optional part of a decimal dot and 2 digits

这可以写为;

/^[0-9]{1,3}(,[0-9]{3})*(.[0-9]{2})?$/

这篇关于如何用Regex检查有效的小数点数字?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何用Regex检查有效的小数点数字?

基础教程推荐