具有大写或小写(但不能同时具有大写和小写)的Java正则表达式

具有大写或小写(但不能同时具有大写和小写)的Java正则表达式,java,regex,regex-negation,Java,Regex,Regex Negation,我正在编写一个密码表达式,其中验证应该包含 必须包含带有数字或符号的字母,而不是字母、数字和符号 大写或小写不是两者的组合 密码的最小长度为8 根据Mena提供的输入,我已将我的表达式更新为 String patternChar = "^[a-z&&[^A-Z]]+|[A-Z&&[^a-z]]+$"; String patternNumber = "^[a-zA-Z0-9&&[\\S]]+|[a-zA-Z\\S&&[^0-9]]+$

我正在编写一个密码表达式,其中验证应该包含

必须包含带有数字或符号的字母,而不是字母、数字和符号 大写或小写不是两者的组合 密码的最小长度为8 根据Mena提供的输入,我已将我的表达式更新为

String patternChar = "^[a-z&&[^A-Z]]+|[A-Z&&[^a-z]]+$";
String patternNumber = "^[a-zA-Z0-9&&[\\S]]+|[a-zA-Z\\S&&[^0-9]]+$";
PatternChar仅适用于大写或小写。 如果我将PatternChar与数字或符号组合在一起,PatternNumber确实有效。 此处的符号表示所有UTF8或unicode字符,例如£$%^

谢谢你的帮助

但也有问题

问候
Ram

相关:您想要一个正则表达式还是两个不同的正则表达式?需要两个正则表达式。如何为UTF8字符提供支持。默认情况下,Java提供ascii支持。