java的正则
有一段文本的格式是“次要信息.=我想要的1|PM=/我想要的2/|QK=/我想要的3/|ND=/我想要的4”
如何设计正则表达式进行匹配,分别截取出我4段我想要的串?
------解决方案--------------------
String str = "次要信息.=我想要的1|PM=/我想要的2/|QK=/我想要的3/|ND=/我想要的4";
Pattern pattern = Pattern.compile("^.*=(.*)\\|.*/(.*)/\\|.*/(.*)/\\|.*/(.*)$");
Matcher matcher = pattern.matcher(str);
matcher.find();
for(int i=1; i<=matcher.groupCount(); i++){
System.out.println(matcher.group(i));
}
------解决方案--------------------
Java code
String str = "次要信息.=我想要的1|PM=/我想要的2/|QK=/我想要的3/|ND=/我想要的4";
Pattern pattern = Pattern.compile("\\.=(.+?)\\|PM=/(.+?)/\\|QK=/(.+?)/\\|ND=/(.+)");
Matcher matcher = pattern.matcher(str);
while(matcher.find()){
System.out.println(matcher.group(1));
System.out.println(matcher.group(2));
System.out.println(matcher.group(3));
System.out.println(matcher.group(4));
}