import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?:(^[^:\\r\\n]+):?[\\r\\n]+|\\G(?!^))\\r?\\n[^:\\r\\n]+ : ([^\\r\\n]+(?:\\r?\\n(?!.* : )[ \\t]+[^\\r\\n]+)*)";
final String string = "Windows IP Configuration\n\n"
+ " Host Name . . . . . . . . . . . . : abcmyhost\n"
+ " Primary Dns Suffix . . . . . . . : parker.industries\n"
+ " Node Type . . . . . . . . . . . . : Hybrid-GLS\n"
+ " IP Routing Enabled. . . . . . . . : YES\n"
+ " WINS Proxy Enabled. . . . . . . . : YES\n"
+ " DNS Suffix Search List. . . . . . : parker1.industries\n"
+ " parker2.industries\n"
+ " parker3.industries\n"
+ " parker4.industries\n"
+ " parker5.industries\n"
+ " parker6.industries\n"
+ " parker7.industries\n"
+ " parker8.industries\n"
+ " parker9.industries\n"
+ " parker10.industries\n\n"
+ "Ethernet adapter Ethernet 5:\n\n"
+ " Connection-specific DNS Suffix . : parker.industries\n"
+ " Description . . . . . . . . . . . : Ready 2\n"
+ " Physical Address. . . . . . . . . : 60-11-11-31-09-XY\n"
+ " DHCP Enabled. . . . . . . . . . . : NO\n"
+ " Autoconfiguration Enabled . . . . : Yes\n"
+ " Link-local IPv6 Address . . . . . : AB80::11FG:1KI:LK9F:12N2%19(Preferred) \n"
+ " IPv4 Address. . . . . . . . . . . : 111.222.333.444(Preferred) \n"
+ " Subnet Mask . . . . . . . . . . . : 255.255.255.0\n"
+ " Lease Obtained. . . . . . . . . . : Monday, November 11, 2019 6:23:03 AM\n"
+ " Lease Expires . . . . . . . . . . : Wednesday, November 13, 2019 6:51:30 AM\n"
+ " Default Gateway . . . . . . . . . : 111.11.131.1\n"
+ " DHCP Server . . . . . . . . . . . : 111.22.144.199\n"
+ " DHCPv6 IAID . . . . . . . . . . . : 87244642462\n"
+ " DHCPv6 Client DUID. . . . . . . . : 00-01-02-03-04-05-06-07-08-09-10-11-E9-G7\n"
+ " DNS Servers . . . . . . . . . . . : 111.22.111.254 \n"
+ " 111.22.112.254\n"
+ " 111.33.113.254\n"
+ " 111.33.114.254\n"
+ " NetBIOS over Tcpip. . . . . . . . : Enabled";
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