使用输入文本的正则表达式模式实现的标准是,
没有开始和结束标准。
尝试使用以下单个正则表达式实现
^(
(\w+\d+[@%\$]+)
|
(\d+[@%\$]+\w+)
|
([@%\$]+\d+\w+)
|
(\w+[@%\$]+\d+)
)$
问题是,
支持至少一个大写不起作用。 我很确定这不是构建正则表达式模式的好方法。
请帮助我以单一的正则表达式模式实现这些标准。
提前致谢!!!
测试@ 123
测试@ 123
@ 123tesT
123 @测试
TTTTeeeess @@@@ $$$ 111112222
@@@@ $$$ 1111TTT @@@ $$ ESSS
测试(无特殊字符)
@ 123
123
@
T
测试
test @ 123(无大写)
测试@ 123安培; ('&'不支持该模式)
@ 123test
@ TTT123(无小写)
答案 0 :(得分:0)
^(?=.*[A-Z])(?=.*\d)(?=.*[a-z])(?=.*[@%$]).+$
试试这个。这应该这样做。使用前瞻来满足每个条件。
参见演示。
答案 1 :(得分:0)
有一种更好的方法,使用lookaheads:
^
(?=.*[A-Z])
(?=.*[a-z])
(?=.*[@%$])
(?=.*\d)
.*$