import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^Date:\\ (?P<date>.+?$)\n"
+ ".+?\n"
+ "^From:\\ (?P<sender>.+?$)\n"
+ ".+?\n"
+ "^To:\\ (?P<to>.+?$)\n"
+ ".+?\n"
+ "^cc:\\ (?P<cc>.+?$)\n"
+ ".+?\n"
+ "^Subject:\\ (?P<subject>.+?$)";
final String string = "Message-ID: <3490571.1075846143093.JavaMail.evans@thyme>\n"
+ "Date: Wed, 8 Sep 1999 08:50:00 -0700 (PDT)\n"
+ "From: steven.kean@enron.com\n"
+ "To: kelly.kimberly@enron.com\n"
+ "Subject: Re: India And The WTO Services Negotiation\n"
+ "Mime-Version: 1.0\n"
+ "Content-Type: text/plain; charset=us-ascii\n"
+ "Content-Transfer-Encoding: 7bit\n"
+ "X-From: Steven J Kean\n"
+ "X-To: Kelly Kimberly\n"
+ "X-cc: \n"
+ "X-bcc: \n"
+ "X-Folder: \\Steven_Kean_Dec2000_1\\Notes Folders\\All documents\n"
+ "X-Origin: KEAN-S\n"
+ "X-FileName: skean.nsf\n\n"
+ "fyi\n"
+ "---------------------- Forwarded by Steven J Kean/HOU/EES on 09/08/99 03:49 \n"
+ "PM ---------------------------\n\n\n"
+ "Joe Hillings@ENRON\n"
+ "09/08/99 02:52 PM\n"
+ "To: Joe Hillings/Corp/Enron@Enron\n"
+ "cc: Sanjay Bhatnagar/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, Terence H \n"
+ "Thorn/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, Ashok \n"
+ "Mehta/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, John \n"
+ "Ambler/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, Steven J Kean/HOU/EES@EES, \n"
+ "Jeffrey Sherrick/Corp/Enron@Enron \n"
+ "Subject: Re: India And The WTO Services Negotiation \n\n"
+ "Sanjay: Some information of possible interest to you. I attended a meeting \n"
+ "this afternoon of the Coalition of Service Industries, one of the lead groups \n"
+ "promoting a wide range of services including energy services in the upcoming \n"
+ "WTO GATTS 2000 negotiations. CSI President Bob Vastine was in Delhi last week \n"
+ "and met with CII to discuss the upcoming WTO. CII apparently has a committee \n"
+ "looking into the WTO. Bob says that he told them that energy services was \n"
+ "among the CSI recommendations and he recalls that CII said that they too have \n"
+ "an interest.\n\n"
+ "Since returning from the meeting I spoke with Kiran Pastricha and told her \n"
+ "the above. She actually arranged the meeting in Delhi. She asked that I send \n"
+ "her the packet of materials we distributed last week in Brussels and London. \n"
+ "One of her associates is leaving for India tomorrow and will take one of \n"
+ "these items to Delhi. \n\n"
+ "Joe\n\n\n\n"
+ "Joe Hillings\n"
+ "09/08/99 11:57 AM\n"
+ "To: Sanjay Bhatnagar/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT\n"
+ "cc: Terence H Thorn/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, Ashok \n"
+ "Mehta/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, John \n"
+ "Ambler/ENRON_DEVELOPMENT@ENRON_DEVELOPMENT, Steven J Kean/HOU/EES@EES, \n"
+ "Jeffrey Sherrick/Corp/Enron@Enron (bcc: Joe Hillings/Corp/Enron)\n"
+ "Subject: India And The WTO Services Negotiation\n\n"
+ "Sanjay: First some information and then a request for your advice and \n"
+ "involvment.";
final Pattern pattern = Pattern.compile(regex, Pattern.COMMENTS | Pattern.DOTALL | Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html