【发布时间】:2010-09-19 20:33:41
【问题描述】:
只是一个简单的问题,正则表达式有点乱,所以我想我会在这里发帖。下面的正则表达式用于验证用户名。
长度必须在 4-26 个字符之间
至少以 2 个字母开头
- 只能包含数字和一个 下划线和一个点
到目前为止我有这个,但没有工作
<?php
$username=$_POST['username'];
if (!eregi("^([a-zA-Z][0-9_.]){4,26}$",$username))
{
return false;
}
else
{
echo "username ok";
}
?>
谢谢:)
【问题讨论】:
-
preg_match是执行正则表达式匹配的首选方式。eregi自 PHP 5.3 起已弃用,“强烈反对”使用它:php.net/eregi -
没有,谢谢你的链接
-
请给出一些有效和无效用户名的例子。您的规则是矛盾的(至少 2 个字母与只有数字)。