包含至少一个大写字母,至少一个数字且字符串长度应为7的字符串的正则表达式。

时间:2018-08-14 18:00:04

标签: java regex string

我正在尝试创建一个正则表达式,该正则表达式将用于验证包含至少一个大写字母,一个数字且字符串长度应为7的字符串。

^[[A-Z]+[0-9]+]{7}$:这是我使用的正则表达式,但无法正常工作

1 个答案:

答案 0 :(得分:1)

您可以使用模式来实现-^(?=.*\\d)(?=.*[A-Z]).{7}$。首先检查数字,然后检查字母,然后验证输入的长度。

它使用预读(?=)。

(?=.*\\d):这将检查数字

(?=.*[A-Z]):这将检查所有大写字母

.{7}:检查输入的长度

public static void main(String[] args) {
    String input = "abcAB1C";
    Pattern pattern = Pattern.compile("^(?=.*\\d)(?=.*[A-Z]).{7}$");
    System.out.println(pattern.matcher(input).find());
}