读入数据string[ ],然后读入一个短字符串。要求查找string[ ]中和短字符串的所有匹配,输出行号、匹配字符串。匹配时不区分大小写,并且可以有一个用中括号表示的模式匹配。如“aa[123]bb”,就是说aa1bb、aa2bb、aa3bb都算匹配。
import java.util.Scanner;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
while(cin.hasNext()) {
int count =cin.nextInt();
String[] words=new String[count];
for(int i=0;i<count;i++) {
words[i]=cin.next();
}
String match=cin.next().toLowerCase();
for(int i=0;i<count;i++) {
if(Pattern.matches(match, words[i].toLowerCase())) {
System.out.println(i+1+" "+words[i]);
}
}
}
cin.close();
}
}