#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)(?<class>^(?<fully_qualified_class_name>(?<deliniator>(?<!\\)\\(?!\\)(?=(?P>fully_qualified_class_name))){0,1}[A-z_][\w]*)(?=::(?P>method)|$)|^(?<namespace>^(?P>fully_qualified_class_name)*)(?P>deliniator)(?P>fully_qualified_class_name)(?=::(?P>method)|$))(?<scope_resolution_operator>::(?=(?P>method)(?!$)))?(?<method>(?<=::)(?<operation>(?<mutator>[sS]et(?=[A-Z0-1_]|$))|(?<accessor>[gG]et(?=[A-Z0-1_]|$))|(?<condition>[iI]s(?=[A-Z0-1_]|$)|[hH]as(?=[A-Z0-1_]|$)))?_?(?<target>(?<=\w)\w*)|[A-z_]\w*)?$"
Local $sString = "/Class and Namespace Capture" & @CRLF & _
"Nam_e" & @CRLF & _
"\_Nam_e" & @CRLF & _
"Nam_e\Spac_e" & @CRLF & _
"" & @CRLF & _
"/Class Method and Namespace Capture" & @CRLF & _
"/With Operation and Target" & @CRLF & _
"Nam_e::set_Singular" & @CRLF & _
"\Nam_e\Spac_e::isSingular" & @CRLF & _
"\Nam_e\Spac_e::" & @CRLF & _
"" & @CRLF & _
"/Class Method and Deep Namespace Capture" & @CRLF & _
"/Without Operation and Target" & @CRLF & _
"Nam_e\Spac_e\Accessible\Caller\Value::setsingular" & @CRLF & _
"\Nam_e\Spac_e\Accessible\Caller\Value::singular" & @CRLF & _
"" & @CRLF & _
"/Class Method and Deep Namespace Capture" & @CRLF & _
"/With Mutator Operation and Target" & @CRLF & _
"Nam_e\Spac_e\Accessible\Caller\Value::setSingular" & @CRLF & _
"" & @CRLF & _
"/Class Method and Deep Namespace Capture" & @CRLF & _
"/With Accessor Operation and Target" & @CRLF & _
"Nam_e\Spac_e\Accessible\Caller\Value::get_singular" & @CRLF & _
"" & @CRLF & _
"/Class Method and Deep Namespace Capture" & @CRLF & _
"/With Conditional Operation and Target" & @CRLF & _
"\Nam_e\Spac_e\Accessible\Caller\Value::isSingular" & @CRLF & _
"Nam_e\Spac_e\Accessible\Caller\Value::has_Singular"
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