正则表达式匹配固定汉字
场景
收到String类型数据,需要进行匹配是否包含固定的字符(英文、汉字),如果有则输出固定字符位置之前的数据,如果没有。则输出无
思路
使用正则表达式进行匹配,并使用group方法进行分组
代码
//判断是否包含"购票折扣率"//如果包含,则输出"购票折扣率"前面的内容//如果不包含,则输出"没有提前天数"@Testpublic void testRegularExpression() {List<String> list = Arrays.asList("提前0-1天购票折扣率","0-2天(含第2天)购票折扣率","2天外(不含第2天)购票折扣率","3天外购票折扣率","提前0-2天购票折扣率","提前2-3天购票折扣率","购票折扣率","折扣率");Pattern pattern = pile("([^购票折扣率]+)");for (String s : list) {Matcher m = pattern.matcher(s);if (m.find()) {System.out.println(m.group());} else {System.out.println("没有提前天数");}}}