import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^(A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$";
final String string = "AK\n"
+ "AL\n"
+ "AR\n"
+ "AZ\n"
+ "CA\n"
+ "CO\n"
+ "CT\n"
+ "DE\n"
+ "FL\n"
+ "GA\n"
+ "HI\n"
+ "IA\n"
+ "ID\n"
+ "IL\n"
+ "IN\n"
+ "KS\n"
+ "KY\n"
+ "LA\n"
+ "MA\n"
+ "MD\n"
+ "ME\n"
+ "MI\n"
+ "MN\n"
+ "MO\n"
+ "MS\n"
+ "MT\n"
+ "NC\n"
+ "ND\n"
+ "NE\n"
+ "NH\n"
+ "NJ\n"
+ "NM\n"
+ "NV\n"
+ "NY\n"
+ "OH\n"
+ "OK\n"
+ "OR\n"
+ "PA\n"
+ "RI\n"
+ "SC\n"
+ "SD\n"
+ "TN\n"
+ "TX\n"
+ "UT\n"
+ "VA\n"
+ "VT\n"
+ "WA\n"
+ "WI\n"
+ "WV\n"
+ "WY";
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