#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)(?'gPatSyslogPRI'<\d+>)" & @CRLF & _
"(?'gPatMesgBody'.*)" & @CRLF & _
"(?'gPatMesgBodyMin'.*?)" & @CRLF & _
"(?'gPatSyslogNGHeader'\w{3}\s+\d{1,2}\s\d{1,2}:\d{1,2}:\d{1,2}\s\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})" & @CRLF & _
"(?'gPatMon'Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|\d{1,2})" & @CRLF & _
"(?'gPatMonNum'\d{1,2})" & @CRLF & _
"(?'gPatDay'\d{1,2})" & @CRLF & _
"(?'gPatTime'\d{1,2}:\d{1,2}:\d{1,2})" & @CRLF & _
"(?'gPatYear'\d{2,4})" & @CRLF & _
"(?'gPatMSec'\d{1,3})" & @CRLF & _
"(?'gPatTimeMSec'\d{1,2}:\d{1,2}:\d{1,2}\.\d{1,3})" & @CRLF & _
"(?'gPatTimeZone'Z|UTC|[+-]\d{1,2}:?\d{2})" & @CRLF & _
"(?'gPatWeekday'Mon|Tue|Wed|Thu|Fri|Sat|Sun)" & @CRLF & _
"(?'gPatIpV4Dot'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})" & @CRLF & _
"(?'gPatIpAddr'[0-9A-Fa-f]{0,4}(?::[0-9A-Fa-f]{0,4}){1,5}:(?:\d{1,3}(?:\.\d{1,3}){3}|[0-9A-Fa-f]{0,4}(?::[0-9A-Fa-f]{0,4})?)|\d{1,3}(?:\.\d{1,3}){3})" & @CRLF & _
"(?'gPatIpPort'\d{1,5})" & @CRLF & _
"(?'gPatProto'ftp|icmp|tcp|udp|http|ip|smb|smtp|snmp|others|FTP|ICMP|UDP|TCP|HTTP|IP|SMB|SMTP|SNMP|OTHERS)" & @CRLF & _
"(?'gPatFqdn'\w+[.\w+]+)" & @CRLF & _
"(?'gPatWord'\w+)" & @CRLF & _
"(?'gPatStr'[^\s]*)" & @CRLF & _
"(?'gPatHostName'[\w.-]+)" & @CRLF & _
"(?'gPatStrComma'[^,]*)" & @CRLF & _
"(?'gPatStrLeftParen'[^\(]*)" & @CRLF & _
"(?'gPatStrRightSB'[^\]]*)" & @CRLF & _
"(?'gPatInt'\d+)" & @CRLF & _
"(?'gPatSpace'\s+)" & @CRLF & _
"(?'gPatStrEndColon'[^:]*)" & @CRLF & _
"(?'gPatStrSQ'[^']*)" & @CRLF & _
"(?'gPatStrDQ'[^']*)" & @CRLF & _
"(?'gPatSentence'\w[\s+\w]*)"
Local $sString = ""
Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYGLOBALFULLMATCH)
Local $aFullArray[0]
For $i = 0 To UBound($aArray) -1
_ArrayConcatenate($aFullArray, $aArray[$i])
Next
$aArray = $aFullArray
; Present the entire match result
_ArrayDisplay($aArray, "Result")
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 AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm