#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?mi)^(?:(?:ds|crl|ocsp|dnl\-[0,1][0-9]\.geo|(?:[sp][0,1][0-9]|downloads)\.upd)\.kaspersky|downloads[0-9]?\.kaspersky\-labs)\.com$"
Local $sString = "ds.kaspersky.com" & @CRLF & _
"dnl-01.geo.kaspersky.com" & @CRLF & _
"dnl-02.geo.kaspersky.com" & @CRLF & _
"dnl-03.geo.kaspersky.com" & @CRLF & _
"dnl-04.geo.kaspersky.com" & @CRLF & _
"dnl-05.geo.kaspersky.com" & @CRLF & _
"dnl-06.geo.kaspersky.com" & @CRLF & _
"dnl-07.geo.kaspersky.com" & @CRLF & _
"dnl-08.geo.kaspersky.com" & @CRLF & _
"dnl-09.geo.kaspersky.com" & @CRLF & _
"dnl-10.geo.kaspersky.com" & @CRLF & _
"dnl-11.geo.kaspersky.com" & @CRLF & _
"dnl-12.geo.kaspersky.com" & @CRLF & _
"dnl-13.geo.kaspersky.com" & @CRLF & _
"dnl-14.geo.kaspersky.com" & @CRLF & _
"dnl-15.geo.kaspersky.com" & @CRLF & _
"dnl-16.geo.kaspersky.com" & @CRLF & _
"dnl-17.geo.kaspersky.com" & @CRLF & _
"dnl-18.geo.kaspersky.com" & @CRLF & _
"dnl-19.geo.kaspersky.com" & @CRLF & _
"dnl-00.geo.kaspersky.com" & @CRLF & _
"s00.upd.kaspersky.com" & @CRLF & _
"s01.upd.kaspersky.com" & @CRLF & _
"s02.upd.kaspersky.com" & @CRLF & _
"s03.upd.kaspersky.com" & @CRLF & _
"s04.upd.kaspersky.com" & @CRLF & _
"s05.upd.kaspersky.com" & @CRLF & _
"s06.upd.kaspersky.com" & @CRLF & _
"s07.upd.kaspersky.com" & @CRLF & _
"s08.upd.kaspersky.com" & @CRLF & _
"s09.upd.kaspersky.com" & @CRLF & _
"s10.upd.kaspersky.com" & @CRLF & _
"s11.upd.kaspersky.com" & @CRLF & _
"s12.upd.kaspersky.com" & @CRLF & _
"s13.upd.kaspersky.com" & @CRLF & _
"s14.upd.kaspersky.com" & @CRLF & _
"s15.upd.kaspersky.com" & @CRLF & _
"s16.upd.kaspersky.com" & @CRLF & _
"s17.upd.kaspersky.com" & @CRLF & _
"s18.upd.kaspersky.com" & @CRLF & _
"s19.upd.kaspersky.com" & @CRLF & _
"p00.upd.kaspersky.com" & @CRLF & _
"p01.upd.kaspersky.com" & @CRLF & _
"p02.upd.kaspersky.com" & @CRLF & _
"p03.upd.kaspersky.com" & @CRLF & _
"p04.upd.kaspersky.com" & @CRLF & _
"p05.upd.kaspersky.com" & @CRLF & _
"p06.upd.kaspersky.com" & @CRLF & _
"p07.upd.kaspersky.com" & @CRLF & _
"p08.upd.kaspersky.com" & @CRLF & _
"p09.upd.kaspersky.com" & @CRLF & _
"p10.upd.kaspersky.com" & @CRLF & _
"p11.upd.kaspersky.com" & @CRLF & _
"p12.upd.kaspersky.com" & @CRLF & _
"p13.upd.kaspersky.com" & @CRLF & _
"p14.upd.kaspersky.com" & @CRLF & _
"p15.upd.kaspersky.com" & @CRLF & _
"p16.upd.kaspersky.com" & @CRLF & _
"p17.upd.kaspersky.com" & @CRLF & _
"p18.upd.kaspersky.com" & @CRLF & _
"p19.upd.kaspersky.com" & @CRLF & _
"downloads.upd.kaspersky.com" & @CRLF & _
"crl.kaspersky.com" & @CRLF & _
"ocsp.kaspersky.com" & @CRLF & _
"downloads.kaspersky-labs.com" & @CRLF & _
"downloads0.kaspersky-labs.com" & @CRLF & _
"downloads1.kaspersky-labs.com" & @CRLF & _
"downloads2.kaspersky-labs.com" & @CRLF & _
"downloads3.kaspersky-labs.com" & @CRLF & _
"downloads4.kaspersky-labs.com" & @CRLF & _
"downloads5.kaspersky-labs.com" & @CRLF & _
"downloads6.kaspersky-labs.com" & @CRLF & _
"downloads7.kaspersky-labs.com" & @CRLF & _
"downloads8.kaspersky-labs.com" & @CRLF & _
"downloads9.kaspersky-labs.com" & @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