import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "[FHD]?[LP]U?\\d{3}|H032B|RVS8N";
final String string = "BUSS4 Business Flat Line Bundle\n"
+ "FSULR Ftr Simply Unl LD Bundle\n"
+ "CC55P Addl Line Basic 2yr Cred n/a Bundle Discount\n"
+ "FSCC1 Ftr Simply Unl Feat Bundle Discount\n"
+ "WZC21 LD Discount 24 MO Bundle Discount\n"
+ "RE099 Additional Line Credit Discount\n"
+ "RE117 Solutions Bundle Discount Discount\n"
+ "WZ101 Simply Unlimited Term Discount\n"
+ "BLSR1 Business Line - Rotary Feature\n"
+ "CX113 Centranet Feature Package Feature\n"
+ "IWMB7 Inside Wire Maint - Bus Feature\n"
+ "OPSN1 Oprtr Call Scrng Inbound Feature\n"
+ "OVOP4 Onepoint Voice Ma Feature\n"
+ "VDI03 Unlimited Local Toll n/a Toll\n"
+ "VDI04 Unlimited Regional toll c n/a Toll\n"
+ "B1 Business Line \n"
+ "B1FT3 Business Line - 3 Yr Term \n"
+ "B1M Business Line - Metered \n"
+ "CFNT1 CentraNet Stn Ln 2-25 \n"
+ "CXAM1 CustoPak Ln Measrd Rate \n"
+ "EUAPB ISDN BRI Interst Acc Port \n"
+ "FEA1P Addl Line Unl 2 Yr Feat \n"
+ "IBCD6 ISDN B Channel Voice & Da \n"
+ "IBRB1 ISDN Single User Access \n"
+ "ISA06 ISDN BRI Access \n"
+ "NP Non-Published Listing \n"
+ "SOLF2 Sol Bun Line 2yr Cpk Feat \n"
+ "SOLF3 Solutions Feat Pack \n"
+ "VLC21 Unlimited Local and ZUM c n/a \n"
+ "WZC70 LEC Discount Bus 24 MO \n\n"
+ " WZB90 HSI Discount 99 MO Discount\n"
+ " WZB93 FiOS Internet Bus 99 MO Discount\n"
+ " WZC66 HSI Discount 24 MO Discount\n"
+ "MSC03 FiOS Quantum Gateway Rout Equipment\n"
+ " DL658 High Speed Inet - 7.1/768 \n"
+ " DP658 High Speed Inet - 7.1/768 \n"
+ " FL503 FiOSInet 25M/25M 2YR Loop \n"
+ " FP503 FiOSInet 25M/25M 2YR Port \n"
+ " H032B FiOS Internet \n"
+ " HL384 High Speed Inet - 7.1/768 \n"
+ " HP384 High Speed Inet - 7.1/768 \n"
+ " LU040 FiOS Internet 25/25 Mb \n"
+ " PU040 FiOS Internet 25/25 Mb \n"
+ " RVS8N Online Bkup & Shrng/50GB \n\n"
+ "VDO03 Unlimited Long Distance n/a\n"
+ "TTWLD Talk to the World \n"
+ "VDO04 Unlimited long distance c n/a\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
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