伪PHP正则表达式

肯德基

我正在尝试使用php找到正确的正则表达式来检查伪代码。它应该在4到64个字符之间,具有字母数字字符(区分大小写)和下划线。我尝试了这些:

preg_match ( "/^([[[:alnum:]]_]){4, 64}$/", $pseudo )
preg_match ( "/^([a-zA-Z0-9_]){4, 64}$/", $pseudo )
preg_match ( "/^[[[:alnum:]]_]{4, 64}$/", $pseudo )
preg_match ( "/^[a-zA-Z0-9_]{4, 64}$/", $pseudo )
preg_match ( "/^([[[:alnum:]]_]){4,64}$/", $pseudo )
preg_match ( "/^([a-zA-Z0-9_]){4,64}$/", $pseudo )
preg_match ( "/^[[[:alnum:]]_]{4,64}$/", $pseudo )
preg_match ( "/^[a-zA-Z0-9_]{4,64}$/", $pseudo )
preg_match ( "#^([[[:alnum:]]_]){4, 64}$#", $pseudo )
preg_match ( "#^([a-zA-Z0-9_]){4, 64}$#", $pseudo )
preg_match ( "#^[[[:alnum:]]_]{4, 64}$#", $pseudo )
preg_match ( "#^[a-zA-Z0-9_]{4, 64}$#", $pseudo )
preg_match ( "#^([[[:alnum:]]_]){4,64}$#", $pseudo )
preg_match ( "#^([a-zA-Z0-9_]){4,64}$#", $pseudo )
preg_match ( "#^[[[:alnum:]]_]{4,64}$#", $pseudo )
preg_match ( "#^[a-zA-Z0-9_]{4,64}$#", $pseudo )
...

还有更多,但没人能用,我不知道为什么。

编辑:我的功能是这样的:

function pseudoIsAllowed($pseudo) {
    $res = true;
    echo "$pseudo\n";
    if (! preg_match ( "/^[[[:alnum:]]_]{4,64}$/", $pseudo ))
        $res = false;
    if ($res)
        echo "$pseudo is allowed.\n";
    else
        echo "$pseudo is NOT allowed.\n";
    return $res;
}
肯德基

似乎/ ^ [[:: alum:] _] {4,64} $ /有效。也许是缓存问题或类似的问题。谢谢大家

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章