import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "<[Rr]epresentation[^>]*?[Bb]andwidth=\"0?[2-9]\\d{6}\"[\\s\\S]*?[Rr]epresentation>";
final String string = "<MPD xmlns=\"urn:mpeg:dash:schema:mpd:2011\" minBufferTime=\"PT1.500000S\" type=\"static\" mediaPresentationDuration=\"PT0H9M54.00S\" profiles=\"urn:mpeg:dash:profile:isoff-live:2011\">\n"
+ " <ProgramInformation moreInformationURL=\"http://gpac.sourceforge.net\">\n"
+ " <Title>/home/elkhatib/Documents/dash264/TestCases/2b/qualcomm/2_BBB_5Sec_MainProf/MultiRes.mpd generated by GPAC</Title>\n"
+ " </ProgramInformation>\n"
+ " <Period id=\"\" duration=\"PT0H9M54.00S\">\n"
+ " <AdaptationSet segmentAlignment=\"true\" maxWidth=\"1280\" maxHeight=\"720\" maxFrameRate=\"24\" par=\"16:9\">\n"
+ " <Representation id=\"1\" mimeType=\"video/mp4\" codecs=\"avc1.4d401f\" width=\"512\" height=\"288\" frameRate=\"24\" sar=\"1:1\" startWithSAP=\"1\" bandwidth=\"2000000\">\n"
+ " <SegmentTemplate timescale=\"12288\" duration=\"61440\" media=\"BBB_512_640K_video_$Number$.mp4\" startNumber=\"1\" initialization=\"BBB_512_640K_video_init.mp4\" />\n"
+ " </Representation>\n"
+ " <Representation id=\"1\" \n"
+ "mimeType=\"video/mp4\" \n"
+ "codecs=\"avc1.4d401f\" \n"
+ "width=\"512\" \n"
+ "height=\"288\" \n"
+ "frameRate=\"24\" \n"
+ "sar=\"1:1\" \n"
+ "startWithSAP=\"1\" \n"
+ "bandwidth=\"1000000\">\n"
+ " <SegmentTemplate timescale=\"12288\" duration=\"61440\" media=\"BBB_512_640K_video_$Number$.mp4\" startNumber=\"1\" initialization=\"BBB_512_640K_video_init.mp4\" />\n"
+ " </Representation>\n"
+ " <Representation id=\"1\" mimeType=\"video/mp4\" codecs=\"avc1.4d401f\" width=\"512\" height=\"288\" frameRate=\"24\" sar=\"1:1\" startWithSAP=\"1\" bandwidth=\"2000000\">\n"
+ " <SegmentTemplate timescale=\"12288\" duration=\"61440\" media=\"BBB_512_640K_video_$Number$.mp4\" startNumber=\"1\" initialization=\"BBB_512_640K_video_init.mp4\" />\n"
+ " </Representation>\n"
+ " <Representation id=\"2\" mimeType=\"video/mp4\" codecs=\"avc1.4d401f\" width=\"768\" height=\"432\" frameRate=\"24\" sar=\"1:1\" startWithSAP=\"1\" bandwidth=\"4000000\">\n"
+ " <SegmentTemplate timescale=\"12288\" duration=\"61440\" media=\"BBB_768_1440K_video_$Number$.mp4\" startNumber=\"1\" initialization=\"BBB_768_1440K_video_init.mp4\" />\n"
+ " </Representation>\n"
+ " </AdaptationSet>\n"
+ " </Period>\n"
+ "</MPD>\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE | Pattern.DOTALL);
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