#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?i)(NUMBER[(](\d{1,3},\d)[)])|(NUMBER[(]((\d{1,3})|(\d{1,3}[,]\d))[)]((?=\/DECIMAL)|(?=\/PERCENTAGE)).*)"
Local $sString = "NUMBER(12)" & @CRLF & _
"NUMBER(12)/NUMBER" & @CRLF & _
"NUMBER(1)" & @CRLF & _
"NUMBER(1)/NUMBER" & @CRLF & _
"(100)" & @CRLF & _
"DATATYPE=NUMBER" & @CRLF & _
"NUMBER" & @CRLF & _
"NUMBER()" & @CRLF & _
"NUMBER(10,2)/PERCENTAGE" & @CRLF & _
"NUMBER(12)/DECIMAL" & @CRLF & _
"NUMBER(12,4)" & @CRLF & _
"NUMBER(13,4)" & @CRLF & _
"NUMBER(15)/DECIMAL" & @CRLF & _
"NUMBER(15,2)" & @CRLF & _
"NUMBER(16)/DECIMAL" & @CRLF & _
"NUMBER(10,3)/DECIMAL" & @CRLF & _
"NUMBER(3)/DECIMAL" & @CRLF & _
"NUMBER(3)/PERCENTAGE" & @CRLF & _
"NUMBER(4)/DECIMAL" & @CRLF & _
"NUMBER(4,1)" & @CRLF & _
"NUMBER(4,2)" & @CRLF & _
"NUMBER(5)/DECIMAL" & @CRLF & _
"NUMBER(5)/PERCENTAGE" & @CRLF & _
"NUMBER(5,2)" & @CRLF & _
"NUMBER(5,2)/PERCENTAGE" & @CRLF & _
"NUMBER(6)/DECIMAL" & @CRLF & _
"NUMBER(7)/DECIMAL" & @CRLF & _
"NUMBER(8)/DECIMAL" & @CRLF & _
"NUMBER/" & @CRLF & _
"NUMBER/CURRENCY" & @CRLF & _
"NUMBER/DECIMAL" & @CRLF & _
"NUMBER/IFS CURRENCY" & @CRLF & _
"NUMBER/INVISIBLE" & @CRLF & _
"NUMBER/NUMBER" & @CRLF & _
"NUMBER/PERCENTAGE" & @CRLF & _
"NUMBER/UPPERCASE" & @CRLF & _
"NUMBER=" & @CRLF & _
"Number" & @CRLF & _
"number" & @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