CCF 字符串匹配 java


import java.util.*;

public class 字符串匹配 {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		String str = in.next();
		int a = in.nextInt();
		int n = in.nextInt();
		in.nextLine();
		List<String> list = new ArrayList<>();
		for (int i = 0; i < n; i++) {
			list.add(in.nextLine());
		}
		if (a == 1) {// 大小写敏感
			for (int i = 0; i < n; i++) {
				String ss = list.get(i);
				int temp = ss.indexOf(str);
			//	System.out.println(temp);
				if (temp >= 0 && temp < ss.length()) {
					System.out.println(ss);
				}
			}
		}
		if(a==0){//大小写不敏感
			for(int i=0;i<n;i++){
				String ss=list.get(i);
				if(judge(str,ss)){
					System.out.println(ss);
				}
			}
		}
	}
	static boolean judge(String str,String ss){//将指定的字符串str和每个给出的字符串ss都转成大写,看ss中是否有str。
	String trans_ss=ss.toUpperCase();
	String trans_str=str.toUpperCase();
	int w=trans_ss.indexOf(trans_str);//找下标,例如Hello在abcHellodd中的下标是3
	if(w>=0&&w<ss.length()){//看看下标是否在0-ss.length()之间,有则返回true,否则返回false
		return true;
	}else{
		return false;
	}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值