liy*_*kat 2 php regex preg-match
如何检查号码是否有效以下字符串.
最后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();
Run Code Online (Sandbox Code Playgroud)
根据允许的格式,以上两个价格都是正确的.
正则表达式有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
Run Code Online (Sandbox Code Playgroud)
这可以写成;
/^[0-9]{1,3}(,[0-9]{3})*(\.[0-9]{2})?$/
Run Code Online (Sandbox Code Playgroud)