#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)create table (\w+)\([\s\S]+?(?=\)(?:\n|$))"
Local $sString = "create table sous_branche(" & @CRLF & _
" id_sous_branche integer not null," & @CRLF & _
" code_sous_branche character varying(20) not null," & @CRLF & _
" libelle_sous_branche character varying(55) not null," & @CRLF & _
" designation_sous_branche character varying(255) null," & @CRLF & _
" taux_taxes float null," & @CRLF & _
" date_creation timestamp without time zone null," & @CRLF & _
" ref_importation integer null," & @CRLF & _
" date_importation timestamp without time zone null" & @CRLF & _
")" & @CRLF & _
"go" & @CRLF & _
"-- **** object: table caisse script date: 30/06/2015 16:53:15 ****" & @CRLF & _
"create table operation_caisse(" & @CRLF & _
" id_operation_caisse integer not null," & @CRLF & _
" operation_id integer not null," & @CRLF & _
" mode_paiement_id integer not null, --id_mode_paiement" & @CRLF & _
" libelle_paiement_caisse_id integer not null, --id_libelle_paiement" & @CRLF & _
" jour_imputation timestamp without time zone null," & @CRLF & _
" date_paiement_caisse timestamp without time zone null," & @CRLF & _
" numero_reglement integer null," & @CRLF & _
" libelle_operation_caisse character varying(55) not null," & @CRLF & _
" montant_operation_caisse double precision null," & @CRLF & _
" payeur_effet_caisse_id integer not null, --id_payeur_effet" & @CRLF & _
" numero_effet_caisse character varying(30) null," & @CRLF & _
" titulaire_compte_effet_caisse character varying(55) null," & @CRLF & _
" date_encaissement_effet_caisse timestamp without time zone null," & @CRLF & _
" autres_informations_caisse text null," & @CRLF & _
" valider_commissionnement_caisse bit not null," & @CRLF & _
" commissions_a_debiter_caisse real null," & @CRLF & _
" numero_piece_caisse character varying(30) null," & @CRLF & _
" piece_caisse_annulee bit not null," & @CRLF & _
" date_annulation_piece_caisse timestamp without time zone null," & @CRLF & _
" reference_annulation_piece_caisse character varying(55) null," & @CRLF & _
" date_creation timestamp without time zone null," & @CRLF & _
" ref_importation integer null," & @CRLF & _
" date_importation timestamp without time zone null" & @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