我正在尝试写一个if语句,如果$ var等于任何数字2000 - 2999 inc。
if ( preg_match( '/^20.*/', $var) ) continue;
这似乎有效,但是这也会在20123456或20001-1234-2345等上匹配吗?
如何将其限制在2000 - 2999(含)?
由于
答案 0 :(得分:4)
为什么要通过preg_match
?
您可以使用经典if
:
if ($var >= 2000 && $var <= 2999) continue;
答案 1 :(得分:2)
使用正则表达式的最简单方法:
if ( preg_match( '/^2[0-9]{3}$/', $var) ) continue;
[0-9]
匹配任何数字字符。 {3}
表示完全匹配3次。因此,它会匹配000
,001
,120
,999
等... $
匹配字符串的结尾。
有关详细信息,请参阅此regex101 link。 (使用左侧的单元测试确保功能与您要查找的功能相匹配)