import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "<NewMarket sysname=\"SOCCER(.*?)ODD_EVEN";
final String string = "<NewMarket sysname=\"SOCCER_CORNERS_FIRST_HALF_DOUBLE_CHANCE\" name=\"1st Half Corners Double Chance\" voidRule=\"false\" settleRule=\"[Period] >= [HT]\">\n"
+ " <Mappings>\n"
+ " <OldMarket sysname=\"SOCCER_CORNERS_HALFTIME_DOUBLE_CHANCE\" />\n"
+ " </Mappings>\n"
+ " <MarketDefinition captionEn=\"1st Half Corners Double Chance\" captionEl=\"Διπλή Ευκαιρία Κόρνερ Ημιχρόνου\">\n"
+ " <Odds>\n"
+ " <Bet code=\"1X\" name=\"HomeDraw\" captionEn=\"{HomeTeam} / Draw\" settleRule=\"[HomeCorners1H] >= [AwayCorners1H]\" />\n"
+ " <Bet code=\"X2\" name=\"DrawAway\" captionEn=\"{AwayTeam} / Draw\" settleRule=\"[HomeCorners1H] <= [AwayCorners1H]\" />\n"
+ " <Bet code=\"12\" name=\"HomeAway\" captionEn=\"{HomeTeam} / {AwayTeam}\" settleRule=\"[HomeCorners1H] > [AwayCorners1H] || [HomeCorners1H] < [AwayCorners1H]\" />\n"
+ " </Odds>\n"
+ " </MarketDefinition>\n"
+ " </NewMarket>\n"
+ " <NewMarket sysname=\"SOCCER_CORNERS_ODD_EVEN\" name=\"Corners Odd/Even\" voidRule=\"false\" settleRule=\"[Period] >= [FT]\">\n"
+ " <Mappings>\n"
+ " <OldMarket sysname=\"SOCCER_CORNERS_ODD_EVEN\" />\n"
+ " </Mappings>\n"
+ " <MarketDefinition captionEn=\"Match Corners Odd/Even\" captionEl=\"Μονά Ή Ζυγά Κόρνερ Αγώνα\">\n"
+ " <Odds>\n"
+ " <Bet code=\"1\" name=\"Odd\" captionEn=\"Odd\" settleRule=\"([TotalCorners] % 2) = 1\" />\n"
+ " <Bet code=\"0\" name=\"Even\" captionEn=\"Even\" settleRule=\"([TotalCorners] % 2) = 0\" />\n"
+ " </Odds>\n"
+ " </MarketDefinition>\n"
+ " </NewMarket>\n"
+ " <NewMarket sysname=\"SOCCER_CORNERS_FIRST_HALF_ODD_EVEN\" name=\"1st Half Corners Odd/Even\" voidRule=\"false\" settleRule=\"[Period] >= [HT]\">\n"
+ " <Mappings>\n"
+ " <OldMarket sysname=\"SOCCER_CORNERS_FIRST_HALF_ODD_EVEN\" />\n"
+ " </Mappings>\n"
+ " <MarketDefinition captionEn=\"1st Half Odd/Even Corners\" captionEl=\"Μονά Ή Ζυγά Κόρνερ 1ου Ημιχρόνου\">\n"
+ " <Odds>\n"
+ " <Bet code=\"1\" name=\"Odd\" captionEn=\"Odd\" settleRule=\"([TotalCorners1H] % 2) = 1\" />\n"
+ " <Bet code=\"0\" name=\"Even\" captionEn=\"Even\" settleRule=\"([TotalCorners1H] % 2) = 0\" />\n"
+ " </Odds>\n"
+ " </MarketDefinition>\n"
+ " </NewMarket>\n"
+ " <NewMarket sysname=\"SOCCER_CORNERS_SECOND_HALF_ODD_EVEN\" name=\"2nd Half Corners Odd/Even\" voidRule=\"false\" settleRule=\"[Period] >= [FT]\">\n"
+ " <Mappings>\n"
+ " <OldMarket sysname=\"SOCCER_CORNERS_SECOND_HALF_ODD_EVEN\" />\n"
+ " </Mappings>\n"
+ " <MarketDefinition captionEn=\"2nd Half Odd/Even Corners\" captionEl=\"Μονά Ή Ζυγά Κόρνερ 2ου Ημιχρόνου\">\n"
+ " <Odds>\n"
+ " <Bet code=\"1\" name=\"Odd\" captionEn=\"Odd\" settleRule=\"([TotalCorners2H] % 2) = 1\" />\n"
+ " <Bet code=\"0\" name=\"Even\" captionEn=\"Even\" settleRule=\"([TotalCorners2H] % 2) = 0\" />\n"
+ " </Odds>\n"
+ " </MarketDefinition>\n"
+ " </NewMarket>\n"
+ " <NewMarket sysname=\"SOCCER_CORNERS_RESULT_NO_DRAW\" name=\"Corners Draw No Bet\" voidRule=\"[Period] >= [FT] && [HomeCorners] = [AwayCorners]\" settleRule=\"[Period] >= [FT] && [HomeCorners] != [AwayCorners]\">\n"
+ " <Mappings>\n"
+ " <OldMarket sysname=\"SOCCER_CORNERS_RESULT_NO_DRAW\" />\n"
+ " </Mappings>\n"
+ " <MarketDefinition captionEn=\"Match Corners Draw no bet\" captionEl=\"Νικητής Κόρνερ Αγώνα Ισοπαλία ΄Οχι Στοίχημα\">\n"
+ " <Odds>\n"
+ " <Bet code=\"1\" name=\"Home\" captionEn=\"{HomeTeam}\" settleRule=\"[HomeCorners] > [AwayCorners]\" />\n"
+ " <Bet code=\"2\" name=\"Away\" captionEn=\"{AwayTeam}\" settleRule=\"[HomeCorners] < [AwayCorners]\" />\n"
+ " </Odds>\n"
+ " </MarketDefinition>\n"
+ " </NewMarket>";
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