【发布时间】:2014-05-02 12:39:09
【问题描述】:
我正在使用这个正则表达式来测试用户名是否有效:
[A-Za-z0-9 _]{3,12} 当我在文本编辑器中使用字符串test'ing 对其匹配进行测试时,它会突出显示“test”和“ing”,但是当我在 PHP 中使用以下代码时:
if(!preg_match('/[A-Za-z0-9 _]{3,12}/', $content) 其中 $content 是 test'ing,它应该返回 FALSE,它仍然返回 true。
我的正则表达式有问题吗?我需要:
- 最小长度 3,最大 12
{3,12} - 字符串前后没有空格/下划线,任何地方都没有空格/下划线 (我为此使用了额外的检查,因为我不太擅长正则表达式)
- 只允许使用字母数字、空格和下划线
[A-Za-z0-9 _]
提前谢谢...
【问题讨论】:
标签: php regex preg-match