我有<form>
<input>
,只应包含数字和冒号,如下所示:
$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
语句是否可行?
答案 0 :(得分:4)
使用以下正则表达式进行字段验证。
var $m = preg_match('~^\d+(?::\d+)+$~', $str);
^
- 开始行。
\d+
- 匹配一个或多个数字字符。
:\d+
- 一个冒号和一个或多个数字。
(?::\d+)+
重复^^一次或多次。
$
行尾。
编辑:
var $m = preg_match('~^\d+(?::\d+)*$~', $str);