PHP正则表达式判断汉字和年龄范围和性别只能男女案例

刚刚了解了PHP中的正则表达式,感觉这东西真是个神奇的东西,虽说现在的H5有更直接的标签可以判断,但毕竟不如自己规定的灵活,还是稍微了解了一下,这个小练习中涉及到了关于汉字的匹配方法(utf-8下),和判断一个值在规定的年龄范围,还有性别只能输入男或者女,不多说,上代码,具体看注释:

<?php 
	header('Content-type:text/html; charset=utf-8');
	// 验证用户提交的表单内容是否符合规则
	if ($_SERVER['REQUEST_METHOD'] == 'POST') {
		// 判断姓名是否合法(必须是2-4个汉字)
		if (!preg_match("/^[(\x{4e00}-\x{9fa5})]{2,4}$/u", $_POST['name'])) {
			echo "输入的姓名格式不合法";
			exit;
		}

		// 判断年龄是否合法(18-24岁之间)
		if (!preg_match("/^(1[89])|([23]\d)|(40)$/", $_POST['age'])) {
			echo "输入的年龄不符合范围要求";
			exit;
		}

		// 判断性别是否合法(只能输入男或者女一个字)
		if (!preg_match("/^(男|女)$/", $_POST['gender'])) {
			echo "输入的性别信息格式不合法";
			exit;
		}

		// 若信息都合法,输出确认信息
		echo "您提交的信息是:<br>姓名: ".$_POST['name']."<br>年龄: ".$_POST['age']."<br>性别: ".$_POST['gender'];
	}

 ?>

 <form action="test.php" method="post">
 	<p>姓名:<input type="text" name="name"></p>
 	<p>年龄:<input type="text" name="age"></p>
 	<p>性别:<input type="text" name="gender"></p>
 	<p><input type="submit" name="sub"></p>
 </form>
想要熟练运用正则表达式这个神奇的东西,还是得多探索多练习啊!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值