如何验证条件的正则表达式: 密码不得包含任何紧接着相同字符序列的字符序列。我有其他条件以及正在使用密码验证和UNICODE
(?=.*(..+)\\1)
要验证立即序列重复。这是失败的。这段代码对于传递的第3个和第4个字符串返回“true”;我需要它返回false。请帮忙。
String s2[] = {"1newAb", "newAB1", "1234567AaAa", "123456ab3434", "love", "love1"};
boolean b3;
for(int i=0; i<s2.length; i++){
b3 = s2[i].matches("^(?=.*[0-9])(?=.*[a-zA-Z])(?=.*(..+)\\1).{5,12}$");
System.out.println("value" + b3);
}
学习使用正则表达式主控的秘密武器 - 在线测试工具! - > http://www.regexplanet.com/advanced/index.html(谷歌'正则表达式测试'为更多的选择)。 – 2013-03-14 02:06:04
为什么你需要为此使用正则表达式? – Makoto 2013-03-14 02:06:24
尽管学习正则表达式可能是一个很好的练习,但是您最好将每个规则的密码检查分开,并仅在需要的地方使用正则表达式,以改善代码维护和可读性。 – 2013-03-14 02:09:37