Я пытаюсь создать регулярное выражение, совпадающее со строками, состоящими из символов и символов для этого. Я пишу ниже код:
Pattern pattern = Pattern.compile("[a-z\\?]*");
System.out.println(pattern.matcher("*").matches());
System.out.println(pattern.matcher("a").matches());
System.out.println(pattern.matcher("?").matches());
System.out.println(pattern.matcher("汉").matches());
И получаю вывод ниже:
false
true
true
true
Я ожидаюопределенный шаблон не совпадает с "汉" и возвращает false, но, как вы видите, он возвращает true.Кто-нибудь может объяснить причину этого?