我正在尝试构建一个正则表达式,只允许在其他位置使用特殊字符。例如,不允许A:)B
,但允许A:B
。
A:B:C
,但A,!@B*(C((D
不允许。
唯一的要求是允许在替代位置使用特殊字符,即使是允许使用数字/字符的特殊字符。
任何两个特殊字符都不能相同或不同,甚至不允许连续两个字母数字。
答案 0 :(得分:0)
这似乎适用于您的情况:
[0-9A-Za-z]+([~`!@#$%^&*()_+\-=;':"][0-9A-Za-z]+)+
我在regexr上测试了一些案例:
PS:我不是\w
而\W
因为_
被解释为\w
的一部分。在这种情况下,我假设_
将是一个特殊字符。
希望这有帮助!