import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^\\d+ +(?<=.{11})";
final String string = "Don't want to match below\n"
+ "1 , 52\n"
+ "123 ,abc\n"
+ "1234 abcd\n"
+ "12345 ,asdht\n"
+ "123456 ahcb\n\n"
+ "Don't want to match below\n"
+ "33406 +%global blind rpttyp ;\n"
+ "33407 +\n"
+ "33408 +%let blind=N;\n"
+ "33409 +%let rpttyp =2;\n"
+ "33410 +%let var = %sysfunc(cats(blah));\n"
+ " \n"
+ "Want to match below\n"
+ "33413 /*************************************************************************************\n"
+ "33414 \n"
+ "33439 17APR2018\n"
+ "33440 19APR2018\n"
+ "33441 23APR2018 \n"
+ "33442 24APR2018\n"
+ "33443 **************************************************************************************\n"
+ "33444 Program Notes:\n"
+ "33445 \n"
+ "33446 **************************************************************************************/\n"
+ "33447 options mprint mlogic symbolgen source source2 nobyline;\n"
+ "33448 \n"
+ "33449 %let source=%str(myds);\n\n"
+ "Last goal:\n"
+ "1 2 4 ";
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