Java 如何提取字符串的一部分

Java 如何提取字符串的一部分,java,Java,我的java程序生成一组行作为输出,如 Give input: 4+5 4+5 = <<9>> 输入:4+5 4+5 = 答案显示在>之间。 我只想摘录答案9。我该怎么做?我应该使用模式匹配吗 String str=”“; String str = "<<9>>"; String prefix = "<<"; String postfix = ">>"; String answer = str.substring(

我的java程序生成一组行作为输出,如

Give input: 4+5
4+5 = <<9>>
输入:4+5
4+5 = 
答案显示在>之间。 我只想摘录答案9。我该怎么做?我应该使用模式匹配吗

String str=”“;
String str = "<<9>>";

String prefix = "<<";
String postfix = ">>";

String answer = str.substring(prefix.length, str.indexOf(postfix));
字符串前缀=”; 字符串答案=str.substring(前缀.length,str.indexOf(后缀));
使用一些正则表达式:


或者使用
indexOf

手动执行,这里有一些正则表达式可以提供帮助

    String answer = "<<9>>";
    Pattern pat = Pattern.compile("\\d+");
    Matcher mat = pat.matcher(answer);
    mat.find();
    answer = mat.group();
    System.out.println(answer);
String-answer=“”;
Pattern pat=Pattern.compile(\\d+);
Matcher mat=pat.Matcher(答案);
mat.find();
答案=材料组();
System.out.println(应答);

如果字符串始终采用这种格式,则@Sid solution更好,因为不需要正则表达式。

使用正则表达式。Java在package
Java.util.regex
中有必需的类。为什么在输出时需要提取它?需要解析自己程序的输出?为什么不让它在计算时对
9
做一些有用的事情呢?如果你不需要>,为什么不删除插入它们的代码,而不是添加新代码来删除它们呢?@BrianRoach我正在从另一个java程序执行一个java程序。所以我需要抓住这个值,以便更进一步。