RegEx-首字符不能包含特殊字符,后续字符不能包含少量特殊字符



我有一个特定的验证场景。

首字符的字符串不应包含特殊字符我可以用/^[!@#$%^&*()_+-=[]{};':"\|,.<>/?]+$/

来实现但是后面的字符不能包含特定的特殊字符,分别为!@$%^*+=[]{};:\|<>?

我尝试使用regex/^[!@#$%^&*()_+-=[]{};':"\|,.<>/?][!@$%^*+=[]{};:\|<>?]+$/并否定结果,但它不起作用。

我想允许除这些特殊字符以外的所有其他字符,所以我试图否定上面的regex的结果。

我的意思是,第一个字符应该接受除特殊字符外的所有字符,后面的字符应该接受除指定的特殊字符外的所有字符。

你差一点。只是缺少在字符类中使用^来否定它,并且可能使用+而不是*来允许空字符串。

匹配字符串的开始:^
匹配一个字符不是一个! @ # $ % ^和 ;*()_+-=[]{};':& ,"|,灵活的在/?:[^!@#$%^&*()_+-=[]{};':"\|,.<>/?]
匹配不包含!@$%^*+=[]{};:|<>?:[^!@$%^*+=[]{};:\|<>?]*
匹配字符串:$

完整正则表达式:^[^!@#$%^&*()_+-=[]{};':"\|,.<>/?][^!@$%^*+=[]{};:\|<>?]*$

相关内容

  • 没有找到相关文章

最新更新