#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)(^(\/\*)|([ \t'"](\/\*)))(?!\/)(.|[\r\n]|\n)+?\*\/\n?\n?"
Local $sString = "/* 'aa/' */" & @CRLF & _
"" & @CRLF & _
"/*!test*/" & @CRLF & _
"" & @CRLF & _
"/* someone said 'hello' */" & @CRLF & _
"" & @CRLF & _
"/* "hello"*/" & @CRLF & _
"" & @CRLF & _
"/***test****/" & @CRLF & _
"" & @CRLF & _
"/******" & @CRLF & _
"'test'" & @CRLF & _
"****/" & @CRLF & _
"" & @CRLF & _
"/****" & @CRLF & _
"test" & @CRLF & _
"****/" & @CRLF & _
"" & @CRLF & _
"// let's try a single quote here "test"" & @CRLF & _
"" & @CRLF & _
"/*" & @CRLF & _
"test" & @CRLF & _
"*/" & @CRLF & _
"" & @CRLF & _
"/*'test'*/" & @CRLF & _
"" & @CRLF & _
"/*" & @CRLF & _
" test" & @CRLF & _
"*/" & @CRLF & _
"" & @CRLF & _
"/*" & @CRLF & _
" 'test ' */" & @CRLF & _
"" & @CRLF & _
"/** @require 'aa/*' */" & @CRLF & _
"" & @CRLF & _
".test" & @CRLF & _
" content ''/* test */" & @CRLF & _
"" & @CRLF & _
".test content "/* test */"" & @CRLF & _
"" & @CRLF & _
".test content /* test */" & @CRLF & _
"" & @CRLF & _
"@require 'aaa/*'" & @CRLF & _
"" & @CRLF & _
"@require 'bbb/*' /* test */" & @CRLF & _
"" & @CRLF & _
"@require 'ccc/*'" & @CRLF & _
"" & @CRLF & _
"@require 'ccc/* ab */' /* test */" & @CRLF & _
"" & @CRLF & _
"@require 'ddd/*' /*test '*/" & @CRLF & _
"@require "ddd/*" /*test '*/" & @CRLF & _
"" & @CRLF & _
"@require 'eee/*'" & @CRLF & _
"// test again" & @CRLF & _
"" & @CRLF & _
"@require 'fff/*'" & @CRLF & _
"" & @CRLF & _
"@require 'ggg/*'" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"@require 'hhh/*'" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"@require 'iii/*'" & @CRLF & _
"" & @CRLF & _
"@require 'jjj/*' /* " & @CRLF & _
"test */" & @CRLF & _
"" & @CRLF & _
"@require 'kk/**/*'"
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