我有一个带有<input>
的<form>
,它应该只包含数字和冒号,如下所示:
$string = '1:9:3:2:0';
当我验证用户提交的字段时,我想确保这个输入是有效的。例如,如果只是数字,我会做一个is_numberic()
检查。
如何验证此字符串?
澄清:
$string = '1:9:3:2:0'; // pass
$string = '2123:8:1'; // pass
$string = 'a:9:3:2:0'; // fail
$string = '1:9:3:2:'; // fail
$string = '1:9:3:2:0';
regex
语句是可行的吗?
使用下面的正则表达式进行字段验证。
var $m = preg_match('~^'d+(?::'d+)+$~', $str);
^
—线路起点。'd+
-匹配一个或多个数字字符。:'d+
-冒号和一个或多个数字。(?::'d+)+
重复^^一次或多次。$
行尾。
编辑:
var $m = preg_match('~^'d+(?::'d+)*$~', $str);