import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?'gPatSyslogPRI'<\\d+>)\n"
+ "(?'gPatMesgBody'.*)\n"
+ "(?'gPatMesgBodyMin'.*?)\n"
+ "(?'gPatSyslogNGHeader'\\w{3}\\s+\\d{1,2}\\s\\d{1,2}:\\d{1,2}:\\d{1,2}\\s\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})\n"
+ "(?'gPatMon'Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|\\d{1,2})\n"
+ "(?'gPatMonNum'\\d{1,2})\n"
+ "(?'gPatDay'\\d{1,2})\n"
+ "(?'gPatTime'\\d{1,2}:\\d{1,2}:\\d{1,2})\n"
+ "(?'gPatYear'\\d{2,4})\n"
+ "(?'gPatMSec'\\d{1,3})\n"
+ "(?'gPatTimeMSec'\\d{1,2}:\\d{1,2}:\\d{1,2}\\.\\d{1,3})\n"
+ "(?'gPatTimeZone'Z|UTC|[+-]\\d{1,2}:?\\d{2})\n"
+ "(?'gPatWeekday'Mon|Tue|Wed|Thu|Fri|Sat|Sun)\n"
+ "(?'gPatIpV4Dot'\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})\n"
+ "(?'gPatIpAddr'[0-9A-Fa-f]{0,4}(?::[0-9A-Fa-f]{0,4}){1,5}:(?:\\d{1,3}(?:\\.\\d{1,3}){3}|[0-9A-Fa-f]{0,4}(?::[0-9A-Fa-f]{0,4})?)|\\d{1,3}(?:\\.\\d{1,3}){3})\n"
+ "(?'gPatIpPort'\\d{1,5})\n"
+ "(?'gPatProto'ftp|icmp|tcp|udp|http|ip|smb|smtp|snmp|others|FTP|ICMP|UDP|TCP|HTTP|IP|SMB|SMTP|SNMP|OTHERS)\n"
+ "(?'gPatFqdn'\\w+[.\\w+]+)\n"
+ "(?'gPatWord'\\w+)\n"
+ "(?'gPatStr'[^\\s]*)\n"
+ "(?'gPatHostName'[\\w.-]+)\n"
+ "(?'gPatStrComma'[^,]*)\n"
+ "(?'gPatStrLeftParen'[^\\(]*)\n"
+ "(?'gPatStrRightSB'[^\\]]*)\n"
+ "(?'gPatInt'\\d+)\n"
+ "(?'gPatSpace'\\s+)\n"
+ "(?'gPatStrEndColon'[^:]*)\n"
+ "(?'gPatStrSQ'[^']*)\n"
+ "(?'gPatStrDQ'[^']*)\n"
+ "(?'gPatSentence'\\w[\\s+\\w]*)";
final String string = "";
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