import re
regex = re.compile(r"([\d]+/[\d\w]+\s)(([\w\d]+/[\w\d]+)\s((?:[\w]{1}[\d]{4}\s[\w]{1}[\d]{5}\s\-\s)+[\w]{1}[\d]{4}\s[\w]{1}[\d]{5}\s))+", flags=re.MULTILINE)
test_str = ("VA ADVISORY\n"
"STATUS: EXER\n"
"DTG: 20211116/0600Z\n"
"VAAC: LONDON\n"
"VOLCANO: EYJAFJALLAJOKULL 372020\n"
"PSN: N6338 W01938\n"
"AREA: ICELAND\n"
"SUMMIT ELEV: 1651M\n"
"ADVISORY NR: 2021/009\n"
"INFO SOURCE: ICELAND MET OFFICE\n"
"AVIATION COLOUR CODE: RED\n"
"ERUPTION DETAILS: EXERCISE VOLCEX21 - EYJAFJALLAJOKULL ERUPTION\n"
"OBS VA DTG: 16/0600Z\n"
"OBS VA CLD: SFC/FL200 N4550 W04415 - N6356 W01927 - N7353 E05847 -\n"
"N4025 E05735 - N4550 W04415 MOV SE 15KT FL200/350 N5343 W03145 -\n"
"N6355 W01932 - N7446 E05944 - N6250 E05925 - N5255 W02531 - N5343\n"
"W03145 MOV SE 40KT\n"
"FCST VA CLD +6 HR: 16/1200Z SFC/FL200 N4517 W04623 - N6356 W01924 -\n"
"N7750 E07729 - N3856 E06031 - N4517 W04623 FL200/350 N4839 W04904 -\n"
"N7025 E01017 - N7505 E07954 - N6139 E06549 - N4839 W04904\n"
"FCST VA CLD +12 HR: 16/1800Z SFC/FL200 N4010 E03817 - N4900 W04529 -\n"
"N7112 W00641 - N7617 E09941 - N4010 E03817 FL200/350 N4919 W05700 -\n"
"N7300 E03329 - N7732 E09626 - N5936 E09143 - N4919 W05700\n"
"FCST VA CLD +18 HR: 17/0000Z SFC/FL200 N4901 W05420 - N7235 E00056 -\n"
"N7558 E09708 - N3934 E05131 - N4901 W05420 FL200/350 N4933 W03842 -\n"
"N5436 W04127 - N7433 E03732 - N7935 E11430 - N6503 E10238 - N4933\n"
"W03842\n"
"RMK: EXERCISE VOLCEX21 - EYJAFJALLAJOKULL ERUPTION CONTINUES,\n"
"RECENTLY INCREASING TO APPROX 8KM\n"
"NXT ADVISORY: NO LATER THAN 20211116/1200Z")
matches = regex.finditer(test_str)
for match_num, match in enumerate(matches, start=1):
print(f"Match {match_num} was found at {match.start()}-{match.end()}: {match.group()}")
for group_num, group in enumerate(match.groups(), start=1):
print(f"Group {group_num} found at {match.start(group_num)}-{match.end(group_num)}: {group}")
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 Python, please visit: https://docs.python.org/3/library/re.html