我还没有很好地处理正则表达式,但我希望有人可以帮助我。我在这里找到了这个表达式,它几乎正是我所需要的,但我需要添加它
/^[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
我需要确保提交的字符串长度在{4,20} 4到20个字符之间,我已经查看了其他更简单的示例,但这个表达式有点复杂。在这种情况下,我会在哪里添加“{4,20}”?
答案 0 :(得分:6)
您可以在开头添加positive lookahead来检查正确的字母数量,例如
/^(?=.{4,20}$)[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
答案 1 :(得分:3)
这是一种快速修复方法,适用于需要强制执行字符串长度的任何情况,无论正则表达式如何:
/^(?=.{4,20}$)[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
此外,您可以使用此前瞻技术累积多个正则表达式。
答案 2 :(得分:-1)
你试过了吗?
/^([A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*){4,20}$/