截取格式为:xxx(年份),xxx(年份),xxx(年份),中指定年份的数据,代码如下:
String sale = "123(2017),456(2018),789(2019),101112(2016)";
String year = "2019";
Pattern pattern = Pattern.compile("([0-9])*(\\()(["+year+"]{4})(\\))");//设置正则表达式
Matcher matcher = pattern.matcher(sale);
if (matcher.find()){//是否存在表达式的对应格式,存在则返回true
StringTokenizer stringTokenizer = new StringTokenizer(matcher.group(), "(");//以 "(" 为分隔符
System.out.println(stringTokenizer.nextToken());
}
当然,如果你的年份有其它字母或者字符的话,比如2019Q3、2020H3……,可以将正则表达式改为:
Pattern pattern = Pattern.compile("([0-9])*(\\()(["+year+"]{4})(\\))*?");