#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)^[A-Z\d](?:(?!\d+\.\d)[A-Z\d.\h])*[A-Z]{3,}"
Local $sString = "ID.4 ESTATE 109kW City Pure 52kWh 5dr Auto" & @CRLF & _
"XC40 DIESEL ESTATE 2.0 D4 [190] Inscription Pro 5dr AWD Gea+" & @CRLF & _
"RAPID DIESEL HATCHBACK 1.6 TDI CR Elegance 5dr" & @CRLF & _
"MODEL 3 120kW LONG RANGE AWD " & @CRLF & _
"V40 DIESEL HATCHBACK D2 [120] Momentum 5dr Geartronic" & @CRLF & _
"V60 DIESEL SPORTSWAGON 2.0 D4 [190] R DESIGN Plus 5dr Auto" & @CRLF & _
"X3 ESTATE xDrive M40i 5dr Auto" & @CRLF & _
"C CLASS DIESEL SALOON C250 BlueTEC SE 4dr Auto" & @CRLF & _
"A CLASS DIESEL HATCHBACK A180d Sport Executive 5dr Auto" & @CRLF & _
"2 SERIES COUPE 218i Sport 2dr [Nav] Step Auto" & @CRLF & _
"HILUX SPECIAL EDITIONS Invincible X Ltd Ed D/Cab P/Up 2.4 D+" & @CRLF & _
"C3 PICASSO 1.6 BlueHDi Platinum 5dr" & @CRLF & _
"C3 HATCHBACK 1.2 PureTech 82 Flair 5dr" & @CRLF & _
"XC40 DIESEL ESTATE XC40" & @CRLF & _
"1"
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