欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP验证中文表达式 急!!!!!!!

程序员文章站 2024-02-02 09:30:16
...
php u9 怎么用PHP验证中文字母和数字、

[\u4E00-\u9FA5]这个可以验证中文吗?????急

回复讨论(解决方案)

[\x4E00-\x9FA5]

应该是 [\x4E00-\x9FCF]
现在的软件基本都支持 unicode 6.1 版本啦,不能再用老三篇

不行,[\u4E00-\u9FA5] 是 js 正则用的

既然你想到这样用,可见你用的是 utf-8 编码了
php 正则中要写作 [\x{4e00}-\x{9fa5}] 还要加上 u 修饰符
不过既然有了 u 修饰符,那么 \w 就已经包含中文了

应该是 [\x4E00-\x9FCF]
现在的软件基本都支持 unicode 6.1 版本啦,不能再用老三篇

if (ereg('^[\x4E00-\x9FCF]{1,100}$','哈哈哈哈只')){
echo "通过";
}else{
echo "错误";
}
?>
还是错误呢、

不行,[\u4E00-\u9FA5] 是 js 正则用的

既然你想到这样用,可见你用的是 utf-8 编码了
php 正则中要写作 [\x{4e00}-\x{9fa5}] 还要加上 u 修饰符
不过既然有了 u 修饰符,那么 \w 就已经包含中文了

gb2312不明白js也用的是gb2312

浏览器会将所有传入的数据统一化为 unicode 编码,对于简体中文环境就是 ucs-2
而 \u4E00-\u9FA5 正是汉字的 ucs-2 的编码范围

浏览器会将所有传入的数据统一化为 unicode 编码,对于简体中文环境就是 ucs-2
而 \u4E00-\u9FA5 正是汉字的 ucs-2 的编码范围

是的,明白。

但是你说我在eregi()中怎么就用不了呢

if(eregi()){
ecjp '正确';
}

谢谢!!!

echo '正确';

是不是ereg被支持了呢????

ereg 系列使用的是 POSIX 正则
preg 系列使用的是 PCRE 正则
两者不兼容!

而 ereg 函数组将在不久的将来废除,建议不要使用

ereg 系列使用的是 POSIX 正则
preg 系列使用的是 PCRE 正则
两者不兼容!

而 ereg 函数组将在不久的将来废除,建议不要使用


非常感谢您!!!