#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox
Local $sRegex = "(?m)step.+\s+script: \".*blr/(.*).py\"\s+.*\s+args: \[([\"\w\W\s]+?)\]\n"
Local $sString = "step1:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/BQT.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed"]" & @CRLF & _
" " & @CRLF & _
"step2:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/DC_init.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed", "dcinit"]" & @CRLF & _
" " & @CRLF & _
"step3:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/sensor_upgrade.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed", "upgrade"]" & @CRLF & _
" " & @CRLF & _
"step4:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/Apply_Policy.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed"]" & @CRLF & _
" " & @CRLF & _
"step5:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/sensor_checks.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed"]" & @CRLF & _
" " & @CRLF & _
"step6:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/delete_device.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed", "dcinit"]" & @CRLF & _
" " & @CRLF & _
"step7:" & @CRLF & _
" script: "/workspace/feature-test-lib/tests/upgrade_blr/DC_init.py"" & @CRLF & _
" skip: 0" & @CRLF & _
" args: ["testbed", "dcinit"]" & @CRLF & _
""
Local $sSubst = "\1, \2"
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