我需要定义一个模式,以便输入字符串只能包含0-9,a-z和A-Z。此外,长度在1-30范围内。
这是脚本:
$fileBaseName = 'abc12345';
if (!preg_match("/^[a-zA-Z0-9]{1, 30}$/", $fileBaseName)) {
echo '<br/>' . 'invalid' . '<br/>';
} else {
echo '<br/>' . 'valid' . '<br/>';
}
但是,当我运行此代码时,返回始终为“无效”。
如何解决此问题?
谢谢
答案 0 :(得分:4)
您需要删除空间:
if (!preg_match("/^[a-zA-Z0-9]{1,30}$/", $fileBaseName)) {
答案 1 :(得分:2)
这是你正在寻找的正则表达式:
/^[a-zA-Z0-9]{1,30}$/