Javascript 带有特殊字符(-)的字母数字正则表达式,最多允许4个数字字符
我需要帮助创建一个正则表达式,允许字母数字字符与一个特殊字符(-),并应限制数字字符最多4个 我尝试了以下方法,但不起作用:Javascript 带有特殊字符(-)的字母数字正则表达式,最多允许4个数字字符,javascript,regex,Javascript,Regex,我需要帮助创建一个正则表达式,允许字母数字字符与一个特殊字符(-),并应限制数字字符最多4个 我尝试了以下方法,但不起作用: ^[0-9a-zA-Z,-]\d{0,4}$ 我不知道我是否完全理解您的要求… 但是,此javascript regexp模式接受任意数量的任意大小写字母字符(包括连字符“-”)和最多4位数字;所有字符(字母、连字符、数字)可以以任何顺序出现。您可以使用此正则表达式 ^(?!(.*\d){5,})[a-z0-9-]+$ 解释 ^-锚定到字符串的开头 (?!.*\d{
^[0-9a-zA-Z,-]\d{0,4}$
我不知道我是否完全理解您的要求…但是,此javascript regexp模式接受任意数量的任意大小写字母字符(包括连字符“-”)和最多4位数字;所有字符(字母、连字符、数字)可以以任何顺序出现。您可以使用此正则表达式
^(?!(.*\d){5,})[a-z0-9-]+$
解释
-锚定到字符串的开头^
-检查超过4位数字的条件(?!.*\d{5,})
-将[a-z0-9-]
与a
,z
与0
匹配一次或多次9
-锚定到字符串的末尾$
是否需要特殊字符?为什么字符集中有逗号字符
,
?连字符应该出现在哪里?您可以添加一些示例输入并指出匹配是成功还是失败吗?感谢您的回复,但它不能满足我的要求。我需要以下组合:允许(C1234,C23,C-123,C11234123),不允许(C1234512345,C123456)。数字字符的数量最多应该是4个。@user330366这个可以检查这里,我不知道你为什么这么说?
^(?!(.*\d){5,})[a-z0-9-]+$