如何限制此正则表达式的字符串大小?
/^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$/
我只需要添加量词{3,16}
。
答案 0 :(得分:35)
撒上一些positive lookahead以测试字符串的总长度,如此
/^(?=.{3,16}$)[a-z][a-z0-9]*(?:_[a-z0-9]+)*$/
答案 1 :(得分:0)
我不知道为什么你需要这样做但你可以尝试将你的表达式分成2个字符串并在以后连接它们。您确定没有其他方法可以验证您的输入吗?就像现有的图书馆一样。
答案 2 :(得分:0)
使用正则表达式
/^[a-z](?:[a-z\d]|_(?!_)){1,14}[a-z\d]$/
或
/^(?=.{3,16}$)[a-z][a-z\d]*(?:_[a-z\d]+)*$/