php正则验证字符,判断是否为中英文。在js中,要判断字符串是中文是很简单的。如:
<script> var str = "php哈哈"; if (/^[\u4e00-\u9fa5]+$/.test(str)) { alert("字符串全部是中文"); } else { alert("字符串不全是中文"); } </script>
一个不能输入特殊字符的正则匹配例子。可以是数字、字母、汉字、下划线。
<?php $action = trim($_GET['action']); if( $action == "sub") { $str = $_POST['dir']; //if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312汉字字母数字下划线正则表达式 if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$str)) //UTF-8汉字字母数字下划线正则表达式 { echo"<font color=red>您输入的[".$str."]含有违法字符</font>"; } else{ echo "<font color=green>您输入的[".$str."]完全合法,通过!</font>"; } } ?> <form method="POST" action="?action=sub"> 输入字符(数字,字母,汉字,下划线): <input type="text" name="dir" value=""> <input type="submit" value="提交"> </form>
字符串只能是中文的正则匹配。
//判断字符串是否含有中文 $str = "说说"; //if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) { //只能在GB2312情况下使用 if (preg_match("/^[\x7f-\xff]+$/", $str)) { //兼容gb2312,utf-8 //判断字符串是否全是中文 // if (preg_match("/[\x7f-\xff]/", $str)) { //判断字符串中是否有中文 echo "正确输入,全部是中文字符!"; } else { echo "错误输入"; } echo "<br/>"; echo $str;
php正则在表单应用和提取数据、匹配内容时候很有用,慢慢学习吧。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫