#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)(?:\"(?:(?<=\"(?=[^\n]))[^\n]+?(?=(?<!\\))(?=\"))?\")|(\B'(?:(?<='(?=[^\n]))[^\n]+?(?=(?<!\\))(?='))?')"
Local $sString = "" & @CRLF & _
"1. Valid double-quoted strings:" & @CRLF & _
" - "Hello"" & @CRLF & _
" - "This is a test"" & @CRLF & _
" - "123"" & @CRLF & _
" - "Special characters: @#$%^&*()_+"" & @CRLF & _
" - "Escape sequence: \n"" & @CRLF & _
"" & @CRLF & _
"2. Valid double-quoted strings with additional characters or variables:" & @CRLF & _
" - " test aaaaa \" " + asdf" & @CRLF & _
" - " test " + ( "aaaaa" ) + gdf" & @CRLF & _
" - " test \" " + `" aaaa " + dfg" & @CRLF & _
" - " test ' aaaaa \" " + dfg" & @CRLF & _
" - """ & @CRLF & _
"" & @CRLF & _
"3. Valid double-quoted strings with special characters:" & @CRLF & _
" - "sas''as\"a1\'2 ! -_?:sa"" & @CRLF & _
" - "''"" & @CRLF & _
" - "\abnb\ajhgf\crt098& \"'"" & @CRLF & _
"" & @CRLF & _
"4. Invalid double-quoted strings:" & @CRLF & _
" - " test " + ( "aaaaa" ) \" saf" & @CRLF & _
" - "\\ + \* test " \$ \. dsdfs" & @CRLF & _
" - (\" test \" " + " aaaa " sfgd" & @CRLF & _
" - ' test ' + aas ( "aaaaa" ) + '\ sd" & @CRLF & _
" - '\\ + \* test ' \$ \. trace" & @CRLF & _
" - (' test ' as ' + ' aaaa '" & @CRLF & _
" - '""'" & @CRLF & _
" - '"sas'" & @CRLF & _
" - 'ads'" & @CRLF & _
" - 'asdasd\"asdsa'" & @CRLF & _
" - "klkl"klkl" & @CRLF & _
" - "asa\'sasa\\"" & @CRLF & _
" - \'\\\'" & @CRLF & _
" - "hhhh"klkl"" & @CRLF & _
" - 'jkjkjk'klklk'" & @CRLF & _
" - '\"\\\"'" & @CRLF & _
" - ''" & @CRLF & _
" - '\"asa\'sasa\\\"'" & @CRLF & _
" - "sasasasa\\\\\\"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"1. Valid single-quoted strings:" & @CRLF & _
" - 'Hello'" & @CRLF & _
" - 'This is a test'" & @CRLF & _
" - '123'" & @CRLF & _
" - 'Special characters: @#$%^&*()_+'" & @CRLF & _
" - 'Escape sequence: \n'" & @CRLF & _
"" & @CRLF & _
"2. Valid single-quoted strings with additional characters or variables:" & @CRLF & _
" - ' test aaaaa \' ' + asdf" & @CRLF & _
" - ' test ' + ( 'aaaaa' ) + gdf" & @CRLF & _
" - ' test \' ' + ' aaaa' + dfg" & @CRLF & _
" - ' test " aaaaa \' ' + dfg" & @CRLF & _
" - ''" & @CRLF & _
"" & @CRLF & _
"3. Valid single-quoted strings with special characters:" & @CRLF & _
" - 'sas""as\'a1\"2 ! -_?:sa'" & @CRLF & _
" - '""'" & @CRLF & _
" - '\abnb\ajhgf\crt098& \'""'" & @CRLF & _
"" & @CRLF & _
"4. Invalid single-quoted strings:" & @CRLF & _
" - ' test ' + ( 'aaaaa' ) \' saf" & @CRLF & _
" - '\\ + \* test ' \$ \. dsdfs" & @CRLF & _
" - (\' test \' + ' aaaa ' sfgd" & @CRLF & _
" - " test \" " + " aaaa " sfgd" & @CRLF & _
" - ' test ' + aas ( 'aaaaa' ) + '\ sd" & @CRLF & _
" - '\\ + \* test ' \$ \. trace" & @CRLF & _
" - (' test ' as ' + ' aaaa '" & @CRLF & _
" - "''"" & @CRLF & _
" - 'sas"" & @CRLF & _
" - "ads'" & @CRLF & _
" - 'asdasd\'asdsa'" & @CRLF & _
" - "klkl"klkl" & @CRLF & _
" - "asa\'sasa\\"" & @CRLF & _
" - \'\\\'" & @CRLF & _
" - 'hhhh"klkl\'\" & @CRLF & _
" - \'jkjkjk"klklk'" & @CRLF & _
" - "\'\\\'"" & @CRLF & _
" - ''" & @CRLF & _
" - '\"asa\'sasa\\\"'" & @CRLF & _
" - 'sasasasa\\\\\\'" & @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