#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox
Local $sRegex = "("(?:\\[\s\S]|[^"])*")|((?:\/\/|#)[^\n]*)|(\/\*[\s\S]*?\*\/)"
Local $sString = "//first line" & @CRLF & _
"" & @CRLF & _
" {"aaa": "qwerty",//00" & @CRLF & _
" "bbb": 1234 //comment (not pure JSON syntax)" & @CRLF & _
" ,"ccc": true # alternative comment style" & @CRLF & _
" ,"dd\"d":/*multiline\" comm\ent*/ /*comm2\*/null," & @CRLF & _
" "ee//e": "example of any symbols in key including inactive comments"," & @CRLF & _
" "jsonComm":/*is*/"data format",/*which contains*///comments" & @CRLF & _
" "multiline1" /*: 1, //- example of multiline comments" & @CRLF & _
" "multiline2": 2," & @CRLF & _
" "multiline3":= 1234,*/ :[36.8,false/*,34*/," & @CRLF & _
" "/**/",[1,2,3,4,[//56789" & @CRLF & _
" 5,6,[[/*0*/7,{"x":/*xx*/"x"}],8]],{}] ]," & @CRLF & _
" "mayBeAnyStructure":{"a":1/**/,"b":2}," & @CRLF & _
" "lineEnd\\" " & @CRLF & _
" :"end"" & @CRLF & _
"}//after json" & @CRLF & _
" " & @CRLF & _
" /*2*/ "
Local $sSubst = "$1"
Local $sResult = StringRegExpReplace($sString, $sRegex, $sSubst)
MsgBox($MB_SYSTEMMODAL, "Result", $sResult)
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