我只需要“POLICY ENM_USERDEFINED_wtc2e3lms-bu”和“EXIT STATUS”的值。 也存在类似的输出,但位置不同。 所以不能使用子字符串或分割。 解析必须由Java 完成。
最佳答案
您可以使用几个正则表达式来查找并返回后面的文本。
例如,使用...
public String find(String pattern, String in) {
Pattern p = Pattern.compile(pattern);
Matcher matcher = p.matcher(in);
if (matcher.find()) {
return matcher.group();
}
return null;
}
还有...
String value = "some preable POLICY ENM_USERDEFINED_wtc2e3lms-bu some postable EXIT STATUS 100 some other stuff thrown in the mix";
System.out.println(find("POLICY ENM[a-zA-Z_0-9-]+", value));
System.out.println(find("EXIT STATUS [0-9]+", value));
输出...
POLICY ENM_USERDEFINED_wtc2e3lms-bu
EXIT STATUS 100
从那里,我将使用另一个正则表达式来提取实际的状态值......但我相信您可以弄清楚该部分;)
关于java - 通过 Java 解析输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50636101/