替换为正则表达式解题,效率不高但是简单易懂。 import java.util.Scanner; public class Test71 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { String reg = sc.nextLine().toLowerCase(Locale.ROOT).replaceAll("\\?", "[0-9a-z]{1}") .replaceAll("\\*+", "[0-9a-z]*"); String na...