#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "((?:\\033|\e|\\x1B|\\x1b){1}(?:\[(?:=|\?|[0-9]*)[0-9]*[a-gA-GnmsuJKhlHL]{0,1}(?:(?:\;[0-9]*)*m){0,1}))"
Local $sString = "0x7ffff00196a0 "\r\r\r\033[9999B[\033[m\033[36madmin\033[m@\033[m\033[32mLeonards_switch\033[m] > "" & @CRLF & _
"\r routerboard: yes\r\n model: CRS112-8P-4S\r\n revision: r2\r\n serial-number: F1 4F0FC0637C\r\n firmware-type: qca8513 L \r \n f a c t o r y - f i r m w a r e : 6 . 4 7 . 1 0 \r \n c u r r e n t - f i r m w a r e : 6 . 4 7 . 1 0 \r \n u p g r a d e - f i r m w a r e : 6 . 4 7 . 1 0 \r" & @CRLF & _
"\x1b[1;31mHello \x1b[2;37;41mWorld" & @CRLF & _
"\033[38;2;1;22;252m" & @CRLF & _
"\033[38;5;5m" & @CRLF & _
"\033[48;5;5m" & @CRLF & _
"\033[48;2;15;251;3m" & @CRLF & _
"\033[0J" & @CRLF & _
"\033[J" & @CRLF & _
"\033[1J" & @CRLF & _
"\033[3J" & @CRLF & _
"\033[K" & @CRLF & _
"\033[0K" & @CRLF & _
"\033[u" & @CRLF & _
"\033[s" & @CRLF & _
"\033[8" & @CRLF & _
"\033[7" & @CRLF & _
"\033[m" & @CRLF & _
"\033[6n" & @CRLF & _
"\033[5G" & @CRLF & _
"\033[=14h" & @CRLF & _
"\033[=15l" & @CRLF & _
"\033[?25h" & @CRLF & _
"\033[?1049l"
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