假设我只允许这种格式为2015-2016
,其中包含数字且仅包含一个短划线。如何使用preg_match
执行此操作?我试过以下,但没有运气。
$a = '2015-2016';
if(!preg_match('/[^0-9\-]/i',$a)) {
then return not valid data`
}
答案 0 :(得分:3)
希望这会有所帮助
preg_match('/^\d{4}-\d{4}$/', $string);
^
字符串的开头
\d{4}
匹配数字[0-9]恰好4次
-
匹配字符 - 字面意思
\d{4}
匹配数字[0-9]恰好4次
$
字符串结尾
答案 1 :(得分:0)
$a = '2015-2016';
if(!preg_match('/^[0-9 \-]+$/',$a)) {
then return not valid data }
试试。