#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)(?<=\bdestination\s\/\S+\/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:)(?:2[89][0-9]{3}|3[01][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]|6[5-9][0-9]{3}|65[0-4][0-9]{2}|6553[0-5]|(?:22|53|68|323|500|1067|2379|2380|4500|5355|6443|8005|8007|8087|8443|8444|8505|8507|9007|9090|9153|9999|10249|10250|10251|10252|10256|10257|10259|18091|18092|18093|18095|22222|23790|23791|23801|23802))"
Local $sString = "" & @CRLF & _
"ltm virtual /Common/byoadc-VIP {" & @CRLF & _
" description mylistener.byoadc.com" & @CRLF & _
" destination /Common/157.109.110.76:28010" & @CRLF & _
" ip-protocol tcp" & @CRLF & _
" last-modified-time 2023-04-15:13:23:53" & @CRLF & _
" mask 255.255.255.255" & @CRLF & _
" pool /Common/SSLSUPPORT-POOL" & @CRLF & _
" profiles {" & @CRLF & _
" /Common/byoadc_2024 {" & @CRLF & _
" context clientside" & @CRLF & _
" }" & @CRLF & _
" /Common/http { }" & @CRLF & _
" /Common/tcp { }" & @CRLF & _
" }" & @CRLF & _
"" & @CRLF & _
"ltm virtual /Microsoft-Exchange/pool-int-dns-tcp-53 {" & @CRLF & _
" destination /Microsoft-Exchange/10.175.99.145:53" & @CRLF & _
" ip-protocol tcp" & @CRLF & _
" mask 255.255.255.255" & @CRLF & _
" pool /Microsoft-Exchange/pool-int-dns-53" & @CRLF & _
" profiles {" & @CRLF & _
" /Common/tcp { }" & @CRLF & _
" }" & @CRLF & _
""
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