1.获取这串字符中的.DATA前的字母和数字 。{{first.DATA}} 受理编号:{{keyword1.DATA}}
①利用括号进行定位(?=.DATA) 表示.DATA前的字符串
正则表达式:w+(?=.DATA)
结果:
first
keyword1
②若要匹配后面.DATA后面?=之间加一个< 如 (?<=.DATA)
正则表达式: (?<=.DATA).+
结果: }} 受理编号:{{keyword1.DATA}}
String templateContent = myTemplate.getContent(); String reg = "\w+(?=.DATA)"; Pattern pattern = Pattern.compile(reg); Matcher matcher = pattern.matcher(templateContent); Map<String,Object> map = new HashMap<>(); while (matcher.find()){ map.put(matcher.group(),null); }
2.
正则表达式的重复操作、以什么开头^ 以什么结尾$都只针对一个字符或一个group()。