import re
regex = re.compile(r"device-group\S(?P<device_group> \S+)\s|with |succeeded", flags=re.MULTILINE)
test_str = ("1,2022/09/22 10:01:40,013101004778,SYSTEM,general,2561,2022/09/22 10:01:40,,general,,0,0,general,informational,\"Panorama push to device:013101010578 for device-group: Durham_IPV6_INET_SVCS succeeded. JobId=2480530\"\n"
"1,2022/09/22 10:01:40,013101004778,SYSTEM,general,2561,2022/09/22 10:01:40,,general,,0,0,general,informational,\"Panorama push to device:007257000068919 for device-group: Azure-China-Internet-North succeeded. JobId=2480524\"\n"
"1,2022/09/22 10:01:40,013101004778,SYSTEM,general,2561,2022/09/22 10:01:40,,general,,0,0,general,informational,\"Panorama push to device:016401009013 for device-group: Austin_Experience_Lounge succeeded. JobId=2480530\"\n"
"1,2022/09/22 10:01:40,013101004778,SYSTEM,general,2561,2022/09/22 10:01:40,,general,,0,0,general,informational,\"Panorama push device-group APCC1_Core_Controller with merge-with-candidate-cfg flags set.JobId=60265.User=Panorama-admjeen_yeong_choong. Dequeue time=2022/09/22 10:01:39. DG version: APCC1_Core_Controller: 11854. \",7136408369296042839,0x8000000000000000,0,0,0,0,,apcc1pafwcc01,0,0,2022-09-22T10:01:40.203+00:00")
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