#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?mi)\b([^\s\"]+)(\s+|)\:=\s+new\s+([^(]+)\(([^;\(\)]+)\);"
Local $sString = "create or replace package body ORA_MTK.Test_package_03 as" & @CRLF & _
"procedure do_something (n1 in NUMBER, n2 in out NUMBER,n3 in out NOCOPY NUMBER) as" & @CRLF & _
"" & @CRLF & _
"aaa11 ty_base := new ty_base();" & @CRLF & _
"" & @CRLF & _
"l_array12 tyt_base := new tyt_base(ty_base(1,2,3));" & @CRLF & _
"" & @CRLF & _
"aaa13 ty_base:= new ty_base(participantid => 'a',clientid => '1',price => 3);" & @CRLF & _
"" & @CRLF & _
"begin" & @CRLF & _
" aaa11 ty_base := new ty_base();" & @CRLF & _
"" & @CRLF & _
" l_array12 tyt_base := new tyt_base(ty_base(1,2,3));" & @CRLF & _
"" & @CRLF & _
" l_array13 := new tyt_base(ty_base(1,2,3));" & @CRLF & _
"" & @CRLF & _
" aaa13 := new ty_base(participantid => 'a',clientid => '1',price => 3);" & @CRLF & _
"" & @CRLF & _
" aaa14 := new ty_base(participantid => 'a', -- comment 01" & @CRLF & _
" clientid => '1' -- comment 01 ; ," & @CRLF & _
" ,price => 3);" & @CRLF & _
" aaa15 := new ty_base(participantid15 => 'a', -- comment 01" & @CRLF & _
" -- comment 02;" & @CRLF & _
" clientid15 => '1'" & @CRLF & _
" ,price15 => 3);" & @CRLF & _
" " & @CRLF & _
" aaa16.xxxx := new ty_base(participantid => 'a',clientid => '1',price => 3);" & @CRLF & _
" " & @CRLF & _
" l_array(l_array.count) := NEW ty_base(participantid => 300,clientid => 2,price => 3);" & @CRLF & _
" l_array(l_array.count).xxxx := NEW ty_base(participantid => 300,clientid => 2,price => 3);" & @CRLF & _
" "aaa 17" := new ty_base(participantid => 'a',clientid => '1',price => 3);" & @CRLF & _
"end do_something;" & @CRLF & _
"" & @CRLF & _
"end Test_package_03"
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