import re
regex = re.compile(r"<\d+>\S+\s(\d{4}-\d{2}-\d{2})\s(\d{2}\x3a\d{2}\x3a\d{2}),\d+\s\x5b\d+\x5d\s+\S+\s+\S+\s\S+\s+\S+\s+\S+\s\S+\s\ServerIPAddress\x3a\s\S+\s((?:\d{1,3}\x2e){3}\d{1,3})\s+ClientIPAddress\x3a\s(\S+)\s\S+\s\S+\s\S+\s\S+\s+\S+\s\S+\s+\S+\s\S+\s+\S+\s\S+\s+\S+\s+\S+\s+MessageText\x3a\s(Admin\sActivity)\s+UserId\x3a\s(\d+)\s+UserName\x3a\s(\S+)\s+Action\sDate\/Time\x3a\s+\S+\s\S+\s\S+\s+Portal\sGroup\sId\x3a\s(\d+)\s+Portal Group Name\x3a\s([a-zA-Z\s]+)\s+Action\sType\x3a\s([a-zA-Z\s]+)\sAction\sDetail\x3a([a-zA-Z0-9\.\;\s\:]+)\sArea\sOf\sAdministration\x3a\s(\S+)\s+Portal\sId\x3a\s(\d+)\s+Portal\sName\x3a\s([a-zA-Z0-9\s]+)\s+Enterprise\sUser\x3a\s(\S+)")
test_str = ("<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:06,965 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider\n"
" ClassName: AuditTrailSqlDao\n"
" MethodName: LogToSysLog\n"
" CustomProps: 6ZalfDCycQw=\n"
" MessageText: Admin Activity\n"
" UserId: 301640\n"
" UserName: myost6\n"
" Action Date/Time: 8/8/2016 1:04:06 PM\n"
" Portal Group Id: 1273153\n"
" Portal Group Name: myCarolinas Admin\n"
" Action Type: Update User\n"
" Action Detail: User updated. User ID: 301640; UserName: myost6; \n"
" Area Of Administration: Users\n"
" Portal Id: 6\n"
" Portal Name: my Carolinas Mobile\n"
" Enterprise User: False\n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:06,965 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider\n"
" ClassName: AuditTrailSqlDao\n"
" MethodName: LogToSysLog\n"
" CustomProps: 6ZalfDCycQw=\n"
" MessageText: Admin Activity\n"
" UserId: 301640\n"
" UserName: myost6\n"
" Action Date/Time: 8/8/2016 1:04:06 PM\n"
" Portal Group Id: 1273153\n"
" Portal Group Name: myCarolinas Admin\n"
" Action Type: Update User\n"
" Action Detail: User updated. User ID: 301640; UserName: myost6; \n"
" Area Of Administration: Users\n"
" Portal Id: 6\n"
" Portal Name: my Carolinas Mobile\n"
" Enterprise User: False \n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:12,815 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider\n"
" ClassName: AuditTrailSqlDao\n"
" MethodName: LogToSysLog\n"
" CustomProps: 6ZalfDCycQw=\n"
" MessageText: Admin Activity\n"
" UserId: 244010\n"
" UserName: katdbod\n"
" Action Date/Time: 8/8/2016 1:04:12 PM\n"
" Portal Group Id: 1273153\n"
" Portal Group Name: myCarolinas Admin\n"
" Action Type: Update User\n"
" Action Detail: User updated. User ID: 244010; UserName: katdbod; \n"
" Area Of Administration: Users\n"
" Portal Id: 2\n"
" Portal Name: myCarolinas\n"
" Enterprise User: False\n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:12,815 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider%0D ClassName: AuditTrailSqlDao%0D MethodName: LogToSysLog%0D CustomProps: 6ZalfDCycQw=%0D MessageText: Admin Activity%0D UserId: 244010%0D UserName: katdbod%0D Action Date/Time: 8/8/2016 1:04:12 PM%0D Portal Group Id: 1273153%0D Portal Group Name: myCarolinas Admin%0D Action Type: Update User%0D Action Detail: User updated. User ID: 244010; UserName: katdbod; %0D Area Of Administration: Users%0D Portal Id: 2%0D Portal Name: myCarolinas%0D Enterprise User: False%0D \n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:12,971 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider%0D ClassName: AuditTrailSqlDao%0D MethodName: LogToSysLog%0D CustomProps: 6ZalfDCycQw=%0D MessageText: Admin Activity%0D UserId: 244010%0D UserName: katdbod%0D Action Date/Time: 8/8/2016 1:04:12 PM%0D Portal Group Id: 1273153%0D Portal Group Name: myCarolinas Admin%0D Action Type: Update User%0D Action Detail: User updated. User ID: 244010; UserName: katdbod; %0D Area Of Administration: Users%0D Portal Id: 2%0D Portal Name: myCarolinas%0D Enterprise User: False%0D \n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:12,971 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider%0D ClassName: AuditTrailSqlDao%0D MethodName: LogToSysLog%0D CustomProps: 6ZalfDCycQw=%0D MessageText: Admin Activity%0D UserId: 244010%0D UserName: katdbod%0D Action Date/Time: 8/8/2016 1:04:12 PM%0D Portal Group Id: 1273153%0D Portal Group Name: myCarolinas Admin%0D Action Type: Update User%0D Action Detail: User updated. User ID: 244010; UserName: katdbod; %0D Area Of Administration: Users%0D Portal Id: 2%0D Portal Name: myCarolinas%0D Enterprise User: False%0D \n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:33,766 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider%0D ClassName: AuditTrailSqlDao%0D MethodName: LogToSysLog%0D CustomProps: 6ZalfDCycQw=%0D MessageText: Admin Activity%0D UserId: 164664%0D UserName: rrrleigh%0D Action Date/Time: 8/8/2016 1:04:33 PM%0D Portal Group Id: 1273153%0D Portal Group Name: myCarolinas Admin%0D Action Type: Change User Password%0D Action Detail: Password changed for user. User ID: 164664; %0D Area Of Administration: Users%0D Portal Id: 2%0D Portal Name: myCarolinas%0D Enterprise User: False%0D \n"
"<190>MedSeekBusinessServer.exe: 2016-08-08 09:04:33,766 [4] INFO MedSeek.Portal.Server.LoggingProvider.Data.AuditTrailSqlDao UserID: -9999 UserName: System ServerIPAddress: 10.247.82.26 10.247.82.112 ClientIPAddress: (null) PortalId: (null) PortalName: (null) AssemblyName: MedSeek.Portal.Server.LoggingProvider%0D ClassName: AuditTrailSqlDao%0D MethodName: LogToSysLog%0D CustomProps: 6ZalfDCycQw=%0D MessageText: Admin Activity%0D UserId: 164664%0D UserName: rrrleigh%0D Action Date/Time: 8/8/2016 1:04:33 PM%0D Portal Group Id: 1273153%0D Portal Group Name: myCarolinas Admin%0D Action Type: Change User Password%0D Action Detail: Password changed for user. User ID: 164664; %0D Area Of Administration: Users%0D Portal Id: 2%0D Portal Name: myCarolinas%0D Enterprise User: False%0D \n")
match = regex.search(test_str)
if match:
print(f"Match 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