我修改了这个正则表达式以允许下划线,连字符,字母和数字。 我试图进一步修改它,以便它具有以下属性:
这就是我现在所拥有的:
^[a-zA-Z0-9_-]*$
答案 0 :(得分:5)
试试这个:
^[a-zA-Z0-9](?:[a-zA-Z0-9_-]*[a-zA-Z0-9])?$
或者这个,这将简单地确保字符串不以连字符或下划线开头:
^[a-zA-Z0-9][a-zA-Z0-9_-]*$
答案 1 :(得分:1)
^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9_-]*[a-zA-Z0-9])$
三种可能中的任何一种:
[a-zA-Z0-9]
[a-zA-Z0-9][a-zA-Z0-9]
[a-zA-Z0-9][a-zA-Z0-9_-]*[a-zA-Z0-9]