Pas*_*TIN 11
不确定我会使用正则表达式:正则表达式并不总是适合任何可能的工作的正确工具...
在这里,您指定了6个要求的列表; 那么,为什么不只是使用6种不同的测试,每个要求一个?
我应该补充说,这6个不同的测试真的很简单 - 虽然正则表达式要写得更难(你要求帮助 - 你可能没有进行6次测试).
这会让你的代码更容易理解,我敢打赌;-)
而且:更容易维护; 并且更容易添加/删除/更改与其中一个要求对应的条件之一.
我不完全确定你的"特殊字符"是什么意思,所以我解读这个意思\W,但你可以改变这个,如果你想:
^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*\W)\S{6,15}$
Run Code Online (Sandbox Code Playgroud)