我有一个输入字段,它使用HTML5模式属性只允许使用字母数字字符和下划线^[a-zA-Z0-9_]+$
。
如何调整代码,使字符串不能开始,并带有下划线字符,但仍然允许它们在字符串的其余部分内?
非常感谢任何帮助!
注意:如果我上面的解释不清楚,则下面是有效/无效输入值的列表。
valid
invalid
valid
valid
invalid
答案 0 :(得分:1)
使用否定前瞻:
^(?!_)[a-zA-Z0-9_]+$
这与正则表达式相同,只是^(?!_)
表示第一个字符不能是下划线。
答案 1 :(得分:0)
您也可以不在第一组中包含_
^[a-zA-Z0-9][a-zA-Z0-9_]*$
甚至:
^[^_][a-zA-Z0-9_]*$