#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)^(?:((?:IT|SM)\d{2}[A-Z]{1}\d{22})|(NL\d{2}[A-Z]{4}\d{10})|(LV\d{2}[A-Z]{4}\d{13})|((?:BG|GB|IE)\d{2}[A-Z]{4}\d{14})|(GI\d{2}[A-Z]{4}\d{15})|(RO\d{2}[A-Z]{4}\d{16})|(MT\d{2}[A-Z]{4}\d{23})|(NO\d{13})|((?:DK|FI)\d{16})|((?:SI)\d{17})|((?:AT|EE|LU|LT)\d{18})|((?:HR|LI|CH)\d{19})|((?:DE|VA)\d{20})|((?:AD|CZ|ES|MD|SK|SE)\d{22})|(PT\d{23})|((?:IS)\d{24})|((?:BE)\d{14})|((?:FR|MC|GR)\d{25})|((?:PL|HU|CY)\d{26}))$" & @CRLF & _
""
Local $sString = "AD1400080001001234567890" & @CRLF & _
"AT483200000012345864" & @CRLF & _
"BE71096123456769" & @CRLF & _
"BG18RZBB91550123456789" & @CRLF & _
"HR1723600001101234565" & @CRLF & _
"CY21002001950000357001234567" & @CRLF & _
"CZ5508000000001234567899" & @CRLF & _
"DK9520000123456789" & @CRLF & _
"EE471000001020145685" & @CRLF & _
"FI1410093000123458" & @CRLF & _
"FR7630006000011234567890189" & @CRLF & _
"DE75512108001245126199" & @CRLF & _
"GI04BARC000001234567890" & @CRLF & _
"GR9608100010000001234567890" & @CRLF & _
"HU93116000060000000012345676" & @CRLF & _
"IS750001121234563108962099" & @CRLF & _
"IE64IRCE92050112345678" & @CRLF & _
"IT60X0542811101000000123456" & @CRLF & _
"LV97HABA0012345678910" & @CRLF & _
"LI7408806123456789012" & @CRLF & _
"LT601010012345678901" & @CRLF & _
"LU120010001234567891" & @CRLF & _
"MT31MALT01100000000000000000123" & @CRLF & _
"MC5810096180790123456789085" & @CRLF & _
"NL02ABNA0123456789" & @CRLF & _
"NO8330001234567" & @CRLF & _
"PL10105000997603123456789123" & @CRLF & _
"PT50002700000001234567833" & @CRLF & _
"RO09BCYP0000001234567890" & @CRLF & _
"SM76P0854009812123456789123" & @CRLF & _
"SK8975000000000012345671" & @CRLF & _
"SI56192001234567892" & @CRLF & _
"ES7921000813610123456789" & @CRLF & _
"SE7280000810340009783242" & @CRLF & _
"CH5604835012345678009" & @CRLF & _
"GB33BUKB20201555555555" & @CRLF & _
"VA59001123000012345678" & @CRLF & _
"" & @CRLF & _
"AL35202111090000000001234567" & @CRLF & _
"AZ96AZEJ00000000001234567890" & @CRLF & _
"BH02CITI00001077181611" & @CRLF & _
"BA393385804800211234" & @CRLF & _
"BR1500000000000010932840814P2" & @CRLF & _
"CR23015108410026012345" & @CRLF & _
"FO9264600123456789" & @CRLF & _
"GL8964710123456789" & @CRLF & _
"DO22ACAU00000000000123456789" & @CRLF & _
"EG800002000156789012345180002" & @CRLF & _
"GE60NB0000000123456789" & @CRLF & _
"GT20AGRO00000000001234567890" & @CRLF & _
"IL170108000000012612345" & @CRLF & _
"JO71CBJO0000000000001234567890" & @CRLF & _
"KZ563190000012344567" & @CRLF & _
"XK051212012345678906" & @CRLF & _
"KW81CBKU0000000000001234560101" & @CRLF & _
"LB92000700000000123123456123" & @CRLF & _
"MK07200002785123453" & @CRLF & _
"MR1300020001010000123456753" & @CRLF & _
"MU43BOMM0101123456789101000MUR" & @CRLF & _
"MD21EX000000000001234567" & @CRLF & _
"ME25505000012345678951" & @CRLF & _
"PK36SCBL0000001123456702" & @CRLF & _
"PS92PALS000000000400123456702" & @CRLF & _
"QA54QNBA000000000000693123456" & @CRLF & _
"LC14BOSL123456789012345678901234" & @CRLF & _
"ST23000200000289355710148" & @CRLF & _
"SA4420000001234567891234" & @CRLF & _
"RS35105008123123123173" & @CRLF & _
"TL380010012345678910106" & @CRLF & _
"TN5904018104004942712345" & @CRLF & _
"TR320010009999901234567890" & @CRLF & _
"AE460090000000123456789" & @CRLF & _
"VG21PACG0000000123456789" & @CRLF & _
"UA903052992990004149123456789" & @CRLF & _
"SC52BAHL01031234567890123456USD" & @CRLF & _
"IQ20CBIQ861800101010500" & @CRLF & _
"BY86AKBB10100000002966000000" & @CRLF & _
"SV43ACAT00000000000000123123" & @CRLF & _
"LY38021001000000123456789" & @CRLF & _
"SD8811123456789012" & @CRLF & _
"" & @CRLF & _
"test"
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