import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "\\b(\\d{10}) {6}\\t(\\d{10})\\b(?=[\\s\\S]*\\b\\1 {6}\\t\\2)\\b";
final String string = "+----------------+---------------+------------+\n"
+ "| Reference Date | Instrument ID | Entity ID |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 4251675720 1000183742 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 4251675720 1000183742 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 2113750655 100065856 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 3512075270 1002923999 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 4251998103 1003890261 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 4239113350 1004043945 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 8569030255 1004043945 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 6692802619 1004584989 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 6751615521 1005048991 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 1338818134 1005076529 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 1903780287 1005519781 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 3023132803 1005535434 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 3075990149 1006443568 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 1821112520 1007165898 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 4249904989 100753094 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 4230960972 1009300504 |\n"
+ "+----------------+---------------+------------+\n"
+ "| 2019-06-28 2254190165 1010611747 |\n"
+ "+----------------+---------------+------------+\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