import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(\\{color[^\\}]*\\})|(\\![^!]*(thumbnail)\\!)|(^\\|[\\ \\h]*)|(\\|[\\ ]*(?=[\\n\\r]))";
final String string = "\"####  [MAINT-170 Setup a virtual IOS Development Environment](https://secure.spiria.com/jira-staging/browse/MAINT-170)####\n"
+ " **Description** \n"
+ "| |\n"
+ "| |\n"
+ "| |\n"
+ "|!https://www.pagerduty.com/wp-content/uploads/2016/05/pagerduty-logo-green.png!|[{color:#999999}shutterstock.pagerduty.com{color}|https://shutterstock.pagerduty.com/incidents]|\n"
+ "| |\n"
+ "| |\n"
+ "|Hello Don Ramsey, you have one open incident assigned to you:|\n"
+ " \n"
+ "|{color:#767676}Incident #149053{color}|\n"
+ "| |\n"
+ "|[CRITICAL: 'check_renewal_tracking' on 'prod-worker16.ma01.bigstockcorp.net'|https://shutterstock.pagerduty.com/incidents/P4HX6H1]|\n"
+ "| |\n"
+ "|[{color:#333333}View Incident{color}|https://shutterstock.pagerduty.com/incidents/P4HX6H1]|\n"
+ "| |\n"
+ "|{color:#767676}Details{color}|\n"
+ "|pd_nagios_object: service CONTACTPAGER: 5bb546134cb64acb845ebdf05fc3ae6b|\n"
+ "| |\n"
+ "|{color:#767676}Status{color}|\n"
+ "|{color:#fc0f03}Triggered{color}|\n"
+ "| |\n"
+ "|{color:#767676}Urgency{color}|\n"
+ "|↑ High|\n"
+ "| |\n"
+ "|{color:#767676}Assigned To{color}|\n"
+ "|[{color:#005c9c}Don Ramsey{color}|https://shutterstock.pagerduty.com/users/PAHPTR7]|\n"
+ "| |\n"
+ "|{color:#767676}Opened On{color}|\n"
+ "|[{color:#000000}Oct 24, 2017 at 11:03 AM (Eastern Time (US & Canada)) {color}\\|]|\n"
+ "| |\n"
+ "|{color:#767676}Service{color}|\n"
+ "|[{color:#005c9c}nagios (Bigstock){color}|https://shutterstock.pagerduty.com/services/PVF3TQU]|\n"
+ "| |\n"
+ "|{color:#767676}Escalation Policy{color}|\n"
+ "|[{color:#005c9c}Bigstock Team Escalation{color}|https://shutterstock.pagerduty.com/escalation_policies#PYK0IBT]|\n"
+ "| |\n"
+ "| |\n"
+ "|You can disable these messages (or turn off HTML emails) by adjusting [{color:#005c9c}your notification rules{color}|https://shutterstock.pagerduty.com/users/PAHPTR7].|\n"
+ "| | |\n"
+ "| |\n"
+ "|{color:#767676}PagerDuty, Inc., 600 Townsend St., #200, San Francisco, California, 94103 Copyright © 2008 — 2017 PagerDuty, Inc. All rights reserved.{color}|\n"
+ "| |\n\n"
+ " \"";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (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