#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox
Local $sRegex = "([#.a-z]{1}[a-z_]{1}[\s\S]+?){([\s\S]*?)}"
Local $sString = ".test {}" & @CRLF & _
"" & @CRLF & _
"._test {" & @CRLF & _
"test: tesdff;" & @CRLF & _
"test1: tesdff;" & @CRLF & _
"test2: tesdff;" & @CRLF & _
"}" & @CRLF & _
"" & @CRLF & _
"aaa {" & @CRLF & _
"test1: tesdff;" & @CRLF & _
"test2: tesdff;" & @CRLF & _
"}" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"#test {}" & @CRLF & _
"" & @CRLF & _
"#test1 {}" & @CRLF & _
"" & @CRLF & _
"#_test {}" & @CRLF & _
"" & @CRLF & _
"#_test, " & @CRLF & _
"#test2 {}" & @CRLF & _
"" & @CRLF & _
"#_test:psudo-class {}" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"#1 {}" & @CRLF & _
".2 {}" & @CRLF & _
".- {}" & @CRLF & _
"##test {}" & @CRLF & _
"..test {}" & @CRLF & _
""
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