只能输入2位或5位整数的正则表达式

作者:enenba | 发表于:2012-03-28 18:14 | 分类:正则表达式

只能输入2位或5位整数的正则是这样的

\d\d(\d\d\d)?
([0-9]{2})|([0-9]{5})
\d{2}|\d{5} 

 

谁回答比较巧妙呢?

测试下

php测试:

<form method="get" action="">
	只输入数字:<input type="text" name="q" value="<?php echo $_GET['q']?>">
	<input type="submit" value="提交">
</form>
<?php

if($_GET['q']) {	

	$str = $_GET['q'];
	echo "输入的是:$str<br><br>\n";

	$search = '/^\d\d(\d\d\d)?$/';
	$rr = preg_match($search,$str);
	if ($rr){echo '\d\d(\d\d\d)? 检查通过'."<br>\n";}else{echo '\d\d(\d\d\d)? 检查不通过'."<br>\n";}

	$search = '/^([0-9]{2})|([0-9]{5})$/';
	$rr = preg_match($search,$str);
	if ($rr){echo '([0-9]{2})|([0-9]{5}) 检查通过'."<br>\n";}else{echo '[0-9]{2})|([0-9]{5}) 检查不通过'."<br>\n";}

	$search = '/^\d{2}|\d{5}$/';
	$rr = preg_match($search,$str);
	if ($rr){echo '\d{2}|\d{5}  检查通过'."<br>\n";}else{echo '\d{2}|\d{5} 检查不通过'."<br>\n";}

}
?>
 

end

上一篇: div+css+js隔行换色+鼠标悬停变色   |   下一篇:正则表达式定义» 标签: 正则 正则表达式 正则表达式教程

评论: