题解 | 字符串匹配
字符串匹配
https://www.nowcoder.com/practice/6e6ad6338289498da79b7afb60e823b3
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
Set<String> set = new HashSet<>();
// 注意 hasNext 和 hasNextLine 的区别
String s1 = in.next();
in.nextLine();
String s2 = in.next();
int count = 0;
for (int i=0; i<s1.length(); i++){
if (s1.length() - i < s2.length())break;
int j;
for (j=i; j<s1.length() && j-i < s2.length(); j++){
if (s1.charAt(j) == s2.charAt(j-i) || s2.charAt(j-i) == '?')continue;
else break;
}
if (j-i == s2.length())set.add(s1.substring(i,j));
}
System.out.print(set.size());
}
}