PHP - 使用表格中的preg_match检查正确的文本(a-z,A-Z,0-9)

时间:2014-12-25 11:51:49

标签: php regex preg-match

我需要检查preg_match的用户名是否仅来自a-zA-Z0-9。首先我使用ereg,但我发现它已被弃用,因此我使用preg_match

但它没有用。任何的想法 ?

$test = "test";

if (preg_match("/^[_a-zA-Z0-9]+$/", $test)){
    echo"account generated" ;

}else{
    echo "Please write proper username";
}

1 个答案:

答案 0 :(得分:4)

删除正则表达式中的!,它会起作用!

正则表达式:

^[_a-zA-Z0-9]+$/

^断言字符串开头的位置
[_a-zA-Z0-9]+匹配下面列表中的单个字符 量词:+在一次和无限次之间,尽可能多次,根据需要回馈[贪心]
_字面字符_
a-z a和z之间范围内的单个字符(区分大小写)
A-Z A和Z之间范围内的单个字符(区分大小写)
0-9 0到9之间范围内的单个字符 $断言字符串末尾的位置

也是一个测试你的正则表达式的好网站:regex101(也从那里获得了那些信息)

如果你正在学习正则表达式,cheat sheet总是好的:D