有时候我们会遇到这样的需求,需要把一个报文里的某些参数项通过通配符的形式配置成我们需要的结果值插入回报文中。
String filetext = "<cn>#用户身份ID(主账号)#</cn><sn>#用户姓名#</sn><guid>#唯一标识#<guid><userpassword>#密码#</userpassword><userpwdbackup>#密码#</userpwdbackup><usermail>#用户邮箱#</usermail>"; Pattern p = Pattern.compile("\\#(.*?)\\#");//正则表达式,取=和|之间的字符串,不包括=和| Matcher m = p.matcher(filetext); while(m.find()) { System.out.println(m.group(1));//m.group(1)不包括这两个字符 System.out.println(m.group(0));//m.group(0)包括这两个字符 filetext = filetext.replace(m.group(0), m.group(1)); }