#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?ix)[*][(][\s]*[(\s]*.*[*][)\s]*(.*)\s*[)]\s*=(.*)[\s]*;"
Local $sString = " (*((volatile unsigned short*)(type01_01_06_base + (type01_01_06_offset * 1))) = (unsigned short)(unsigned long)0x01010101);" & @CRLF & _
" (*((volatile unsigned short*)(type01_01_06_base + (type01_01_06_offset * 2))) = (unsigned short)(unsigned long)0x01000100);" & @CRLF & _
"" & @CRLF & _
"(*((volatile unsigned char*)add)) = (unsigned char)data;" & @CRLF & _
"" & @CRLF & _
"(*((volatile unsigned short*)add)) = (unsigned short)data;" & @CRLF & _
"" & @CRLF & _
"(*((volatile unsigned long*)add)) = (unsigned long)data;" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
" " & @CRLF & _
" *((volatile unsigned char*)0x01010004) = (unsigned char)0x01;" & @CRLF & _
" *((volatile unsigned char*)0x01010008) = (unsigned char)0x00;" & @CRLF & _
"" & @CRLF & _
" *((volatile unsigned short*)0x01020004) = (unsigned short)0x0100;" & @CRLF & _
" *((volatile unsigned short*)0x01020008) = (unsigned short)0x0000;" & @CRLF & _
"" & @CRLF & _
" *((volatile unsigned long*)(0x01030000 + 0x04)) = (unsigned long)0x00010000;" & @CRLF & _
" *((volatile unsigned long*)(0x01030000 + 0x08)) = (unsigned long)0x00000000;" & @CRLF & _
"" & @CRLF & _
" (*((volatile unsigned char*)type01_01_04o_add) = (unsigned char)(unsigned char)0xA5);" & @CRLF & _
"" & @CRLF & _
" (*((volatile unsigned char*)type01_01_04n_add) = (unsigned char)(unsigned char)0x5A);" & @CRLF & _
"" & @CRLF & _
" (*((volatile unsigned short*)(type01_01_05_base + type01_01_05o_offset)) = (unsigned short)(unsigned short)0x0101);" & @CRLF & _
" (*((volatile unsigned short*)(type01_01_05_base + type01_01_05n_offset)) = (unsigned short)(unsigned short)0x0100);" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
" *((volatile unsigned char*)0x02010004) = (unsigned char)0x04;" & @CRLF & _
" *((volatile unsigned char*)0x02010008) = (unsigned char)0x05;" & @CRLF & _
"" & @CRLF & _
" *((volatile unsigned short*)0x02020004) = (unsigned short)0x0400;" & @CRLF & _
" *((volatile unsigned short*)0x02020008) = (unsigned short)0x0500;" & @CRLF & _
"" & @CRLF & _
" *((volatile unsigned long*)0x02030004) = (unsigned long)(0x00030000 + 0x00010000);" & @CRLF & _
" *((volatile unsigned long*)0x02030008) = (unsigned long)(0x00030000 + 0x00020000);" & @CRLF & _
"" & @CRLF & _
" (*((volatile unsigned char*)0x02040004) = (unsigned char)(unsigned char)(0x0A - 0x02));" & @CRLF & _
" (*((volatile unsigned char*)0x02040008) = (unsigned char)(unsigned char)(0x0A - 0x01));" & @CRLF & _
"" & @CRLF & _
" (*((volatile unsigned short*)0x02050004) = (unsigned short)(unsigned short)(0x0001 << 11));" & @CRLF & _
" (*((volatile unsigned short*)0x02050008) = (unsigned short)(unsigned short)(0x0001 << 12));" & @CRLF & _
"" & @CRLF & _
" (*((volatile unsigned long*)0x02060004) = (unsigned long)(unsigned long)(0x80000000 | 0x00080000));" & @CRLF & _
" (*((volatile unsigned long*)0x02060008) = (unsigned long)(unsigned long)(0x80000000 | 0x00800000));" & @CRLF & _
"" & @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