正则没有写好,请教一条php的正则表达式.
用户名验证.只需中文 英文 数字 _ @ 英文部分大小写 _不能作为用户名开头
//检测用户名是否合法
$reg="/^[\w\x80-\xff]+$/i";
if(!preg_match($reg,$userInfo[1])){
echo "<font color=blue>用户名又不合法。跳过</font><hr />";
continue;
}
测试了一下这个,发现全角符号还是没有办法判断.
用户名验证.只需中文 英文 数字 _ @ 英文部分大小写 _不能作为用户名开头
//检测用户名是否合法
$reg="/^[\w\x80-\xff]+$/i";
if(!preg_match($reg,$userInfo[1])){
echo "<font color=blue>用户名又不合法。跳过</font><hr />";
continue;
}
测试了一下这个,发现全角符号还是没有办法判断.
$preg = "/^[A-Za-z0-9@\x{4e00}-\x{9fa5}]{1}[\w@\x{4e00}-\x{9fa5}]*$/u";//utf-8编码环境下
if(preg_match($preg,$userInfo[1])){ echo "ok"; }else
{
echo "<font color=blue>用户名不合法。跳过</font><hr />";
}
{
print('符合要求');
}
else
{
print('有非法的字符');
}试试这个...
if($rs == true)
{
print('符合要求');
}
else
{
print('有非法的字符');
}又改了一下...