编辑代码

import java.util.*;
import java.util.regex.Pattern;

class Untitled {
	public static void main(String[] args) {
		List<String> userBuyMistakeRegexReal = new ArrayList<>();
		userBuyMistakeRegexReal.add("(?<!不要|要不就|要是|别|不会|差点|(别(的店|家)|怕|之前|买过).{0,30}|水.{0,1})[跑飞逃][走丢没]了(?!呢)");
		userBuyMistakeRegexReal.add("(鸽子|鸟|兔|鼠|只).{0,2}([走丢逃跑]|越狱)了");
		userBuyMistakeRegexReal.add("[丢逃跑]了.{0,3}只");
		userBuyMistakeRegexReal.add("[丢逃跑](了|出去|掉了).{0,3}只");
		// userBuyMistakeRegexReal.add("我(|们|家).{0,2}(发的|发)(是|).{0,2}快递.{0,6}(这个|收到|收到的|不)是.{0,3}快递");
		
		
		List<String> userAdmitMistakeRegexReal = new ArrayList<>();
		// userAdmitMistakeRegexReal.add("(?<!(你(们)?|[商店卖厂]家|如果|要是).{0,3}|没(有)?|(会)?不会|((不要|别)(再|把)?).{0,3}|地址|(是)?不是|反正|(都|全部).{0,1}|能|怕|给我)[搞弄]错(?!地址|.{0,3}怪我吗|可以商量)");
		userAdmitMistakeRegexReal.add("我们(|店铺|店|家)(不|不是)卖(一|单|[0-9])[套件个包]");
		userAdmitMistakeRegexReal.add("我们(|店铺|店|家)(不|不是)卖(配件|活的|差|坏|陈[货茶]|假|了|你|临期|课程)");
		userAdmitMistakeRegexReal.add("我们(|店铺|店|家).{0,5}支持.{0,5}退货退款|[您你]退货退款吧|亲亲,[|实在抱歉~]这边帮您申请(退货退款|仅退款)");
		
		
		List<String> userSizeBuyMistakeRegexReal = new ArrayList<>();
		userSizeBuyMistakeRegexReal.add("[买拍](大|小)");
		
        // 面单上的快递单号和订单上的快递单号不一样。
		String ramarks = "跑出去一只";
		//String ramarks = "搞错了,怪我吗";
		
		if (ifRegexHit(userBuyMistakeRegexReal, ramarks)) {
			System.out.println("userBuyMistakeRegexReal hit");
		}
		
		if (ifRegexHit(userAdmitMistakeRegexReal, ramarks)) {
			System.out.println("userAdmitMistakeRegexReal hit");
		}
		
		if (ifRegexHit(userSizeBuyMistakeRegexReal, ramarks)) {
			System.out.println("userSizeBuyMistakeRegexReal hit");
		}
			
		
		System.out.println("hello https://tool.lu/");
	}
	
	
	public static Boolean ifRegexHit(List<String> patternStrings, String inString) {
        if (patternStrings == null || patternStrings.size() == 0 || inString == null || inString.length() == 0) {
            return false;
        }

        Boolean regexHit = false;
        for (String patternStr : patternStrings) {
            Pattern pattern = Pattern.compile(patternStr);
            if (pattern.matcher(inString).find()) {
                regexHit = true;
                break;
            }
        }

        return regexHit;
    }
}