import re
regex = re.compile(r"date_modified(?<date_modified>(?:.*?\n?)*?)internal_id(?<internal_id>(?:.*?\n?)*?)task(?<task>(?:.*?\n?)*?)priority(?<priority>(?:.*?\n?)*?)status(?<status>(?:.*?\n?)*?)task_status(?<task_status>(?:.*?\n?)*?)created(?<created>(?:.*?\n?)*?)assigned(?<assigned>(?:.*?\n?)*?)date_created(?<date_created>(?:.*?\n?)*?)date_started(?<date_started>(?:.*?\n?)*?)date_due(?<date_due>(?:.*?\n?)*?)date_completed(?<date_completed>(?:.*?\n?)*?)bunit(?<bunit>(?:.*?\n?)*?)task_vendor(?<task_vendor>(?:.*?\n?)*?)task_category(?<task_category>(?:.*?\n?)*?)customer(?<customer>(?:.*?\n?)*?)cust_name(?<cust_name>(?:.*?\n?)*?)cust_territory(?<cust_territory>(?:.*?\n?)*?)contact(?<contact>(?:.*?\n?)*?)time_date(?<time_date>(?:.*?\n?)*?)time_duration(?<time_duration>(?:.*?\n?)*?)comment(?<comment>(?:.*?\n?)*?)opportunity(?<opportunity>(?:.*?\n?)*?)opp_status(?<opp_status>(?:.*?\n?)*?)opp_engineer(?<opp_engineer>(?:.*?\n?)*?)transaction(?<transaction>(?:.*?\n?)*?)yeg_id(?<yeg_id>(?:.*?\n?)*?)Recent Changes", flags=re.MULTILINE)
test_str = ("date_modified21-DECEMBER-2020 12:25 PMinternal_id313017task2nd Year Annual\n"
"billing pricing -34515priorityMediumstatusCompletedtask_statusAllocatedcreated\n"
"Bernadine PereraassignedBernadine Pereradate_created21-DECEMBER-2020 12:25 PM\n"
"date_started21-DECEMBER-2020date_due21-DECEMBER-2020date_completed\n"
"21-DECEMBER-2020bunitOperationstask_vendorSplunktask_categoryOthercustomer\n"
"cust_namecust_territorycontacttime_datetime_durationcommentopportunityopp_status\n"
"opp_engineertransaction yeg_idRecent Changes\n\n"
"DateSet byContextTypeFieldOld ValueNew Value21-DECEMBER-2020 12:25 PMBernadine\n"
"PereraUISetStart Date21-DECEMBER-2020 12:00 Utc21-DECEMBER-2020 12:25 PM\n"
"Bernadine PereraUISetOwnerBernadine Perera21-DECEMBER-2020 12:25 PMBernadine\n"
"PereraUISetAssignedBernadine Perera21-DECEMBER-2020 12:25 PMBernadine PereraUI\n"
"SetBusiness UnitOperations21-DECEMBER-2020 12:25 PMBernadine PereraUISetTask\n"
"CategoryOther21-DECEMBER-2020 12:25 PMBernadine PereraUISetTask StateAllocated\n"
"21-DECEMBER-2020 12:25 PMBernadine PereraUISetTask VendorSplunk21-DECEMBER-2020\n"
"12:25 PMBernadine PereraUICreateRecordTASK313017You requested to receive an\n"
"email alert for this record. Click here to modify your email alerts\n"
"[https://55349.app.netsuite.com/app/center/userprefs.nl?sc=-29&selectedtab=alerts]")
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