我想知道如何为我的正则表达式指定字符数。我有正确的正则表达式,我只需要确保它可以验证零到四十个字符。
这是正则表达式
$fnameRegex = "/^[a-zA-Z0-9{0,40}-_]+$/";
我可能把它{0,40}
放在了错误的地方。
我想知道如何为我的正则表达式指定字符数。我有正确的正则表达式,我只需要确保它可以验证零到四十个字符。
这是正则表达式
$fnameRegex = "/^[a-zA-Z0-9{0,40}-_]+$/";
我可能把它{0,40}
放在了错误的地方。
尝试
$fnameRegex = "/^[a-zA-Z0-9\-_]{0,40}$/";
字符类中的所有内容[]
都只会匹配一个字符。你把数量限制器放在它外面(你以前有+
1 个或更多 - 用 0 到 40 之间的 {0, 40} 替换它)。
我也在你的角色类中转义了你-
的角色,否则它将被解释为一个范围。
我还向您推荐了很棒的regexr网站,它非常适合交互式地使用 regex。
尝试 [a-zA-Z0-9]{40} 这将检查 40 个大小写字母数字字符
那这个呢?
^(\d){0,40}$
\d 只匹配数字 {0,40} 表示前面的表达式 (\d) 可以出现 0 到 40 次。
您可以使用此工具来检查您的正则表达式。它可能很有用:http: //gskinner.com/RegExr/
希望这可以帮助