import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?mis)^\\bgeneral( #[0-9])?(.*?)^\\s*$";
final String string = "General\n"
+ "Complete name : C:\\Projects\\Foray\\MediaEngine\\SampleMedia\\flv\\small.flv\n"
+ "Format : Flash Video\n"
+ "File size : 296 KiB\n"
+ "Duration : 5s 560ms\n"
+ "Overall bit rate mode : Variable\n"
+ "Overall bit rate : 436 Kbps\n"
+ "Writing application : Lavf52.103.0\n\n"
+ "Video\n"
+ "Format : Sorenson Spark\n"
+ "Codec ID : 2\n"
+ "Duration : 5s 560ms\n"
+ "Bit rate : 781 Kbps\n"
+ "Width : 320 pixels\n"
+ "Height : 240 pixels\n"
+ "Display aspect ratio : 4:3\n"
+ "Frame rate mode : Constant\n"
+ "Frame rate : 25.000 fps\n"
+ "Bit depth : 8 bits\n"
+ "Bits/(Pixel*Frame) : 0.407\n"
+ "Stream size : 530 KiB\n\n"
+ "Audio\n"
+ "Format : MPEG Audio\n"
+ "Format version : Version 1\n"
+ "Format profile : Layer 3\n"
+ "Codec ID : 2\n"
+ "Codec ID/Hint : MP3\n"
+ "Duration : 5s 512ms\n"
+ "Bit rate mode : Variable\n"
+ "Bit rate : 63.8 Kbps\n"
+ "Channel(s) : 1 channel\n"
+ "Sampling rate : 44.1 KHz\n"
+ "Compression mode : Lossy\n"
+ "Stream size : 42.9 KiB (14%)\n\n\n";
final Pattern pattern = Pattern.compile(regex);
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