如何在JAVA Mail API中从特定字符串位置读取邮件并获取数据

如何在JAVA Mail API中从特定字符串位置读取邮件并获取数据,java,string,Java,String,我正在使用JAVA邮件API阅读多封邮件。阅读过程工作良好。现在,作为邮件的正文内容,我得到如下信息: Congratulation , You just bought new item. Details are given below : Condition: New Condition note: Brand New - We have fast shipping! Listing ID: xxxxxxxx SKU: TX969666 Quantity: 1 Order date: 01/

我正在使用JAVA邮件API阅读多封邮件。阅读过程工作良好。现在,作为邮件的正文内容,我得到如下信息:

Congratulation , You just bought new item. Details are given below :

Condition: New
Condition note: Brand New - We have fast shipping!
Listing ID: xxxxxxxx
SKU: TX969666
Quantity: 1
Order date: 01/08/2016
Price: $14.95
Shipping: $0.00
现在,我的任务是只从每封电子邮件中获取所有SKU。如何从该邮件内容中仅获取SKU值

我正在尝试以下情况:

Multipart mp = (Multipart) messages[i].getContent();
int multiparts = mp.getCount();
BodyPart Body = mp.getBodyPart(0);

String Content = Body.getContent().toString();

if (Content.contains("SKU:")) {

    int index = Content.indexOf("SKU:");
    System.out.println(index);

}

通过上面的代码,我可以到达SKU:,我如何才能得到SKU:的全部数据?

我得到了答案,并通过子字符串函数解决,答案是:

if (Content.contains("SKU:")) {

    int index = Content.indexOf("SKU:");
    String SKU = Content.substring(index, index + 15);
    System.out.println("Product SKU is : " + "" + SKU);

}

它对我有效:
子字符串(int-beginIndex,int-endIndex)

我得到了答案,它是通过子字符串函数解决的,答案是:

if (Content.contains("SKU:")) {

    int index = Content.indexOf("SKU:");
    String SKU = Content.substring(index, index + 15);
    System.out.println("Product SKU is : " + "" + SKU);

}

它对我很有用:
子字符串(int-beginIndex,int-endIndex)
您可能还需要研究正则表达式

有一种

Pattern p = Pattern.compile  ("SKU: ([^\\s]+)");
Matcher m = p.matcher  (Content);
if (m.find ()) {
  String sku = m.group (1);
  System.out.println ("Sku: " + sku);
}

您将拥有一个比单独使用子字符串更强大的工具。

您可能还需要研究正则表达式

有一种

Pattern p = Pattern.compile  ("SKU: ([^\\s]+)");
Matcher m = p.matcher  (Content);
if (m.find ()) {
  String sku = m.group (1);
  System.out.println ("Sku: " + sku);
}

您将拥有一个比单独使用子字符串更强大的工具。

Ahh,所以它将从字符串中删除空间,对吗?你能简单地解释一下
Pettern
Matcher
在这里有什么用吗?所以我可以理解它的用途。我得到错误:
索引12 SKU附近的未关闭组:([^\s]+
^抱歉-在手机上编辑是不好的…会在一段时间内解释,所以它会从字符串中删除空格,对吗?请您简单解释一下,
Pettern
Matcher
在这里的用途是什么?这样我就可以理解它的用途了。我得到错误:
索引12 SKU附近的未关闭组:([^\s]+
^抱歉-在手机上编辑不好…稍后将解释