import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^(?P<mounting_type>Z)(?P<number_of_positions>4)(?P<unit_type>W)(?P<actuation_type>EH)(?P<unit_size>10)(?P<spool_symbol>X181|X183|D24|E68|E63|E51)(?P<sep_1>-)(?P<unit_series>5X)(?P<sep_2>/|=)(?P<pilot_valve>4K)(?P<type_of_solenoid>E)(?P<solenoid_in_ac_or_dc_version>G)(?P<voltage_of_solenoid>205|96|24|)(?P<manual_override_unit>N9|)(?P<control_volume_flow>ET)(?P<electrical_connection>K4)(?P<type_of_limit_switch>QM|)(?P<monitored_limit_switch_position>AB|A|B|)(?P<power_supply_of_limit_switch>G24|)(?P<sep_3>/|)(?P<seal_material>V|)(?P<additional_details>(.|[0-9])*)$\n";
final String string = "Z4WEH10E63-5X/4KEG24N9ETK4QMAG24\n"
+ "Z4WEH10E68-5X/4KEG24N9ETK4\n"
+ "Z4WEH10E63-5X/4KEG24N9ETK4\n"
+ "Z4WEH10E51-5X/4KEG24N9ETK4\n"
+ "Z4WEH10D24-5X/4KEG24N9ETK4\n"
+ "Z4WEH10X181-5X/4KEG24ETK4\n"
+ "Z4WEH10X183-5X/4KEG24ETK4\n"
+ "Z4WEH10E63-5X/4KEG205ETK4QMAG24\n"
+ "Z4WEH10E63-5X/4KEG24ETK4QMBG24\n"
+ "Z4WEH10E51-5X/4KEG24N9ETK4/V\n"
+ "Z4WEH10E63-5X/4KEG24N9ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG24ETK4QMBG24SO30\n"
+ "Z4WEH10E63-5X/4KEG205N9ETK4\n"
+ "Z4WEH10E68-5X/4KEG24N9ETK4QMAG24\n"
+ "Z4WEH10E68-5X/4KEG24N9ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG24ETK4QMAG24\n"
+ "Z4WEH10E63-5X/4KEG96ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG24N9ETK4QMBG24/V\n"
+ "Z4WEH10E63-5X/4KEG96N9ETK4\n"
+ "Z4WEH10X181-5X/4KEG24ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG96N9ETK4/V\n"
+ "Z4WEH10E63-5X/4KEG24N9ETK4QMAG24/V\n"
+ "Z4WEH10E63-5X/4KEG24N9ETK4/V\n"
+ "Z4WEH10E63-5X/4KEG24ETK4\n"
+ "Z4WEH10E68-5X/4KEG24ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG205ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG24ETK4QLBG24\n"
+ "Z4WEH10E68-5X/4KEG24N9ETK4/V\n"
+ "Z4WEH10E68-5X/4KEG24ETK4QMAG24\n"
+ "Z4WEH10E63-5X=4KEG205N9ETK4\n"
+ "Z4WEH10E51-5X/4KEG24ETK4QMBG24\n"
+ "Z4WEH10E68-5X/4KEG96N9ETK4\n"
+ "Z4WEH10D24-5X/4KEG24ETK4\n"
+ "Z4WEH10E63-5X/4KEG205N9ETK4QMBG24/V\n"
+ "Z4WEH10E63-5X/4KEG96N9ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG96N9ETK4QMBG24/V\n"
+ "Z4WEH10D24-5X/4KEG24ETK4/V\n"
+ "Z4WEH10X183-5X/4KEG24N9ETK4\n"
+ "Z4WEH10E51-5X/4KEG24ETK4SO30\n"
+ "Z4WEH10X183-5X/4KEG24ETK4QMBG24\n"
+ "Z4WEH10E63-5X/4KEG24ETK4QMBG24/V\n"
+ "Z4WEH10E51-5X/4KEG24N9ETK4QMBG24\n";
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