#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)^\b(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\b\h(\.|\b((?=.{1,255}$)(?:xn\-\-)?(?!-)(?!.*--)[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*\.?)\b)(?:\.)?(?!=)(\h(([a-z0-9-]{1,63})((\=\")[\x21\x23-\x27\x2A-\x3A\x3C-\x7E]{1,255}+(\"))?)?)*?$"
Local $sString = "230 example.com" & @CRLF & _
"56 subsubdomain.subdomain.example.com.thisisaverylongdomainnamewithseventycharacters" & @CRLF & _
"89 subsubdomain.subdomain.example.com.thisisaverylongdomainnamewithseventycharacters test" & @CRLF & _
"1 gOOglE.com alpn="h3,h2"" & @CRLF & _
"250 exmpla.com test="test"" & @CRLF & _
"250 exmpla.com 33="3.63"" & @CRLF & _
"250 . 33="363"" & @CRLF & _
"1 . alpn="h3,h2"" & @CRLF & _
"1 example.com. alpn="h3,h2"" & @CRLF & _
"2 . test=test" & @CRLF & _
"3 . test=""" & @CRLF & _
"1 . alpn="h3,h2" ipv4hint="192.0.2.1" ipv6hint="2001:db8::1"" & @CRLF & _
"1 . alpn="h3,h2" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1"" & @CRLF & _
"1 test.org alpn="h3,h2" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1"" & @CRLF & _
"1 test.org alpn="h3,h2" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1"" & @CRLF & _
"1 test.org alpnfeefefefefefwefwefwefwefwefwefwefwefwefwefwefwefhththegerg="h3,h2"" & @CRLF & _
"1 test.org alpnfeefefefefefwefweefwefwefwefwefwefwefwefwefhththegerg="h3\,h2"" & @CRLF & _
"1 test.org test="jn7j64m764mi67i4i467nhin0iu4n6nizn4i0n6z34htj0nizn4i0n6z34htj03ht834t03h480th3hunizn4i0n6z34htj03ht834t03h480th3hunizn4i0n6z34htj03ht8303ht834t03h480th3hunizn4i0n4t03h480th3hunizn4i0n6z34htj03ht834t03h480th3hu3ht834t03h480th3hu93hu4nu9o83h"" & @CRLF & _
"1 test.org test="jn7j64m764mi67i4i467nhin0iu4n6nizn4i0n6z34htj0nizn4i0n6z34htj03ht834t03h480th3hunizn4i0n6z34htj03ht834t03h480th3hunizn4i0n6z34htj03ht803ht834t03h480th3hunizn4i0n4t03h480th3hunizn4i0n6z34htj03ht834t03h480th3hu3ht834t03h480th3hu93hu4nu9hho83h"" & @CRLF & _
"1 test.org a="h3,h2" alpn="h3,h2"" & @CRLF & _
"3 . test" & @CRLF & _
"3 . test test test" & @CRLF & _
"1 ." & @CRLF & _
"1 überall-ist.de" & @CRLF & _
"1 xn--berall-ist-8db.de" & @CRLF & _
"1 rxn--berall-ist-8db.de" & @CRLF & _
"65535 test.org" & @CRLF & _
"655357 test.org" & @CRLF & _
"65536 test.org" & @CRLF & _
"1 example.comalpn="h3,h2" ipv4hi-nt="192.0.2.1" ipv6hint="2001:db8::1"" & @CRLF & _
"678 tes""t" & @CRLF & _
"1 test.org ="test"" & @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