PHP中完全匹配中文字符的正则表达式

2025-10-23 18:28:59

1、if(!preg_match("/^[\u4e00-\u9fa5]+$/", $content)){  echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>";  }else{  file_put_contents("../_cfg.php",$configs);  msg("<a style=\"color:#075587\" href=\"?act=list\">返回网站初始化设置页面</a> ","","");  }

结果如下,显示:Warning:  preg_match() [function.preg-match]: Compilation failed: PCRE does not support \L, \l, \N, \U, or \u at offset 3 in /data/home/qxu1084910324/htdocs/op/set.php on line 73,意思是\L等不支持。

PHP中完全匹配中文字符的正则表达式

2、if(!preg_match("/^[\x4e00-\x9fa5]+$/", $content)){  echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>";  }

换成这样显示如下:虽然不出错了,但是依然不能判别。

PHP中完全匹配中文字符的正则表达式

3、if(!preg_match("/^[\x80-\xff]*^/", $content)){  echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>";  }

改成这样匹配所有utf8包括全角和特殊,显示成功,但是由于我必须要排除特殊字符和全角符号,再尝试方法:

PHP中完全匹配中文字符的正则表达式

4、if(!preg_match("/^[\x{2460}-\x{2468}]+$/u", $content)){  echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>";  }

显示错误:

PHP中完全匹配中文字符的正则表达式

5、if(!preg_match("/^[\x4e00-\x9fa5]+$/u", $content)){  echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>";  }

这个显示如下:Warning:  preg_match() [function.preg-match]: Compilation failed: invalid UTF-8 string at offset 6 in /data/home/qxu1084910324/htdocs/op/set.php on line 73,utf8格式字符超过范围。

PHP中完全匹配中文字符的正则表达式

6、if(!preg_match("/^[\x{4e00}-\x{9fa5}]+$/u", $content)){  echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>";  }

显示成功。

PHP中完全匹配中文字符的正则表达式

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢