import re
regex = re.compile(r"\b[a-zA-Z]*\d{5,}[a-zA-Z]*\b", flags=re.MULTILINE)
test_str = ("Corresponding to\\n\"\n"
"... \"1 102742238 CN A 2012-10-17 ZTE USA Inc. US20130094411A1\\n\"\n"
"... \"3 20150318972 2015-11-05 Zhang et al.\\n\"\n"
"... \"2 20130128860 2013-05-23 Zhang\\n\"\n"
"... \"1 20130094411 2013-04-18 Zhang\\n\"\n"
"... \"EFS Web 2.1.17\\n\"\n"
"... \"Examiner Signature Date Considered\\n\"\n"
"... \"3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal\\n\"\n"
"... \"1 Terrestrial Radio Access (E-UTRA); Physical channels and modulation (Release 12), 3GPP TS 36.211 V12.7.0\\n\"\n"
"... \"fONAR_ NAN 12R nanac\\n\"\n"
"... \"vs Corresponding to\\n\"\n"
"... \"4 2014110837 WO Al 2014-07-24 Fujitsu Ltd. et al. US20150318972A1\\n\"\n"
"... \"3 2014107012 WO Al 2014-07-10 LG Electronics Inc.\\n\"\n"
"... \"; Corresponding to\\n\"\n"
"... \"2 103120006 CN A 2013-05-22 ZTE Corporation US20130128860A1\\n\"\n"
"... \"EFS Web 2.1.17\\n\"\n"
"... \"| |\\n\"\n")
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