Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression
No Match

r"
"
gm

Test String

Code Generator

Generated Code

#include <StringConstants.au3> ; to declare the Constants of StringRegExp #include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate Local $sRegex = "(?m)(\{\s*(\"uid\"[\S ]+\s*)(\"commandName\": \"(?!OpenSpreadsheet).*\"[\S ]*\s*)(\"packageName\": \"Excel_MS\"[\S ]*\s*)(\"disabled\"[\S ]*\s*)(\"attributes\": \[(?:[\s\S])*?\])\s*\})" Local $sString = "{(\"packageName\": \".+\",\s+))" & @CRLF & _ " "triggers": []," & @CRLF & _ " "nodes": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "c381755e-45af-4521-a5da-ccb611b714de"," & @CRLF & _ " "commandName": "try"," & @CRLF & _ " "packageName": "ErrorHandler"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "112fb642-d36b-40f0-98dd-ca3ffbdf245c"," & @CRLF & _ " "commandName": "OpenSpreadsheet"," & @CRLF & _ " "packageName": "Excel_MS"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "filePath"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "FILE"," & @CRLF & _ " "expression": "file://$sEmailConfig_Path$/Email_Config.xlsx"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isSpecificSheet"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "fileAccessMode"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "EDIT"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isSecure"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "containsHeader"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "loadAddIns"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }," & @CRLF & _ " "sessionTarget": "LOCAL"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "5dde9342-f376-40a6-b989-4b2e1ca27d49"," & @CRLF & _ " "commandName": "step"," & @CRLF & _ " "packageName": "Step"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "0fc45d7d-1e41-449e-be34-39d58c160196"," & @CRLF & _ " "commandName": "if"," & @CRLF & _ " "packageName": "If"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "ce33cad3-9f43-4ee4-8840-0746097df93a"," & @CRLF & _ " "commandName": "SwitchToSheet"," & @CRLF & _ " "packageName": "Excel_MS"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sheetOption"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "BYNAME"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sheetName"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Complete"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "branches": []," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "condition"," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "variable"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sTag$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "operator"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "EQ"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "value"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Complete"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "matchCase"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isIgnoreCarriage"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "CONDITIONAL"," & @CRLF & _ " "conditionalName": "stringVariable"," & @CRLF & _ " "packageName": "String"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "03a75bd4-d238-4d5f-990b-e5bc78c36350"," & @CRLF & _ " "commandName": "if"," & @CRLF & _ " "packageName": "If"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "992db39c-a0ec-4c5b-bdbe-1eda2082bc5b"," & @CRLF & _ " "commandName": "SwitchToSheet"," & @CRLF & _ " "packageName": "Excel_MS"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sheetOption"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "BYNAME"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sheetName"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Error"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "branches": []," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "condition"," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "variable"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sTag$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "operator"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "EQ"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "value"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Error"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "matchCase"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isIgnoreCarriage"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "CONDITIONAL"," & @CRLF & _ " "conditionalName": "stringVariable"," & @CRLF & _ " "packageName": "String"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "title"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "1:判斷需取得完成或失敗收件人"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "765cc618-60f6-4c99-aa09-41587770e548"," & @CRLF & _ " "commandName": "step"," & @CRLF & _ " "packageName": "Step"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "64a1400c-802f-42e0-8919-b34a555e2408"," & @CRLF & _ " "commandName": "GetSingleCell"," & @CRLF & _ " "packageName": "Excel_MS"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "activeCell"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "false"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "cell"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "C2"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "readOption"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "READ_CELL_VALUE"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "readOption_readCellValue_Help"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sPrefix"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "a7f93eed-6554-42bb-a5a1-397064778e2c"," & @CRLF & _ " "commandName": "loop.commands.start"," & @CRLF & _ " "packageName": "Loop"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "41052b43-261a-4c28-ba8a-5c65244a475c"," & @CRLF & _ " "commandName": "if"," & @CRLF & _ " "packageName": "If"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "f429f0ae-e41e-40c5-a2ac-ddf57f84c686"," & @CRLF & _ " "commandName": "assign"," & @CRLF & _ " "packageName": "String"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "sourceString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sRecipient$;$rGet_Email_Info[0]$"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sRecipient"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "branches": []," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "condition"," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "variable"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$rGet_Email_Info[0]$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "operator"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "NEQ"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "value"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "matchCase"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isIgnoreCarriage"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "CONDITIONAL"," & @CRLF & _ " "conditionalName": "stringVariable"," & @CRLF & _ " "packageName": "String"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "loopType"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ITERATOR"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "iterator"," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "rGet_Email_Info"" & @CRLF & _ " }," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "loopSelection"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ALL_ROWS"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "readOption"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "READ_CELL_VALUE"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "readOption_readCellValue_Help"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "ITERATOR"," & @CRLF & _ " "iteratorName": "loop.iterators.excel"," & @CRLF & _ " "packageName": "Excel_MS"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "4c7e0009-3e80-420c-bf95-87bd08d53d41"," & @CRLF & _ " "commandName": "loop.commands.start"," & @CRLF & _ " "packageName": "Loop"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "cdc0133d-96ea-426c-a1ec-45c944727e74"," & @CRLF & _ " "commandName": "if"," & @CRLF & _ " "packageName": "If"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "654cda9c-a1be-41ad-81b2-271025dcd87f"," & @CRLF & _ " "commandName": "assign"," & @CRLF & _ " "packageName": "String"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "sourceString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sCc_Group$;$rGet_Email_Info[1]$"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sCc_Group"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "branches": []," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "condition"," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "variable"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$rGet_Email_Info[1]$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "operator"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "NEQ"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "value"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "matchCase"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isIgnoreCarriage"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "CONDITIONAL"," & @CRLF & _ " "conditionalName": "stringVariable"," & @CRLF & _ " "packageName": "String"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "loopType"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ITERATOR"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "iterator"," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "rGet_Email_Info"" & @CRLF & _ " }," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "loopSelection"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ALL_ROWS"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "readOption"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "READ_CELL_VALUE"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "readOption_readCellValue_Help"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "ITERATOR"," & @CRLF & _ " "iteratorName": "loop.iterators.excel"," & @CRLF & _ " "packageName": "Excel_MS"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "640a0a89-0252-4dbb-9a92-cb667d584a12"," & @CRLF & _ " "commandName": "beforeAfter"," & @CRLF & _ " "packageName": "String"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "sourceString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sRecipient$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "getCharacters"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "BEFORE"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "beforeString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": ";"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "beforeOccurrence"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "number": "1"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "ifNoMatchFound"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "EMPTY"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "noOfCharsToGet"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ALL"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "trimSpaces"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "removeEnter"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sRecipient"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "dc6fc20c-793b-421b-86ba-69355b8fee9b"," & @CRLF & _ " "commandName": "beforeAfter"," & @CRLF & _ " "packageName": "String"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "sourceString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sCc_Group$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "getCharacters"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "BEFORE"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "beforeString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": ";"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "beforeOccurrence"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "number": "1"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "ifNoMatchFound"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "EMPTY"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "noOfCharsToGet"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ALL"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "trimSpaces"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "removeEnter"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sCc_Group"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "f57be4d7-2fd2-4fc7-9319-2a5d7d9a36f7"," & @CRLF & _ " "commandName": "sendMail"," & @CRLF & _ " "packageName": "Email"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "toAddress"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sRecipient$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "cc"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sCc_Group$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "bcc"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "subject"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sPrefix$ - $sSubject$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "attachmentsFilePath"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "FILE"," & @CRLF & _ " "expression": "file://$sAttechment$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "ensureAttachmentsExist"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "bodyFormat"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "HTML"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "message"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sEmail_Message$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "goGreen"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "serverType"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "OUTLOOK"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "569bc7ed-3eaf-4ad3-94ab-36b401a87687"," & @CRLF & _ " "commandName": "CloseSpreadsheet"," & @CRLF & _ " "packageName": "Excel_MS"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "session"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "SESSION"," & @CRLF & _ " "sessionName": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "Email Config"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isSave"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": true" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "d7bb895d-2bef-4a1a-90b0-3040883e2e14"," & @CRLF & _ " "commandName": "delay"," & @CRLF & _ " "packageName": "Delay"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "delayType"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "REGULAR"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "delayTime"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "number": "60"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "timeUnit"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "SECONDS"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "title"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "2:取得收件人並寄出信件"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "branches": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "c95b4ff0-05e4-4872-810c-77de9ee91b03"," & @CRLF & _ " "commandName": "catch"," & @CRLF & _ " "packageName": "ErrorHandler"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "children": [" & @CRLF & _ " {" & @CRLF & _ " "uid": "3a246d3a-c827-429d-a7af-f9f725858d6b"," & @CRLF & _ " "commandName": "toString"," & @CRLF & _ " "packageName": "Datetime"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "source"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "packageName": "System"," & @CRLF & _ " "variableName": "Date"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "selectPattern"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "CUSTOM"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "patternInput"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "yyyyMMdd_HHmmSS"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sTimeStamp"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "bd3915ce-a105-4530-b110-38cfd83cbf45"," & @CRLF & _ " "commandName": "toString"," & @CRLF & _ " "packageName": "Number"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "input"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "expression": "$nErrorLine$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "numFormatDigits"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "number": "0"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sErrorLine"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "41f18175-55bb-40ba-bff7-4fd9d3d82aed"," & @CRLF & _ " "commandName": "assign"," & @CRLF & _ " "packageName": "String"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "sourceString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sErrorLine$:$sErrorMessage$"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sErrorMessage"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "ea11d681-3f54-4627-857c-0e734e68b650"," & @CRLF & _ " "commandName": "captureWindow"," & @CRLF & _ " "packageName": "Screen"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "windowTitle"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "WINDOW"," & @CRLF & _ " "window": {" & @CRLF & _ " "type": "WINDOW"," & @CRLF & _ " "presetType": "CURRENTLY_ACTIVE"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "filePath"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "FILE"," & @CRLF & _ " "expression": "file://$dFolder{sErrorSnapshot}$/$sTimeStamp$_Send%20Email.jpeg"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "isOverwriteFile"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "b0f069ec-cdf5-4a9e-8659-41c92c50362f"," & @CRLF & _ " "commandName": "logToFile"," & @CRLF & _ " "packageName": "LogToFile"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "filePath"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "FILE"," & @CRLF & _ " "expression": "file://$dFolder{sErrorLog}$/$sTimeStamp$_Check%20Files%20and%20Check.txt"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "logContent"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "$sErrorMessage$"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "appendTimestamp"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "BOOLEAN"," & @CRLF & _ " "boolean": false" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "logOption"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "APPEND_FILE"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "encodingValue"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": "ANSI"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "uid": "8072d185-5b98-4627-8b72-0893094ae34b"," & @CRLF & _ " "commandName": "assign"," & @CRLF & _ " "packageName": "String"," & @CRLF & _ " "disabled": false," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "sourceString"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "expression": "FAILED ($sErrorMessage$)"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returnTo": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sModuleStatus"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "attributes": [" & @CRLF & _ " {" & @CRLF & _ " "name": "exceptionType"," & @CRLF & _ " "value": {" & @CRLF & _ " "type": "EXCEPTION"," & @CRLF & _ " "exceptionName": "BotException"," & @CRLF & _ " "packageName": "ErrorHandler"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "returns": {" & @CRLF & _ " "errorMessage": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "sErrorMessage"" & @CRLF & _ " }," & @CRLF & _ " "errorLineNumber": {" & @CRLF & _ " "type": "VARIABLE"," & @CRLF & _ " "variableName": "nErrorLine"" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "variables": [" & @CRLF & _ " {" & @CRLF & _ " "name": "prompt-assignment"," & @CRLF & _ " "description": "A variable you can use for assignments"," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "subtype": "UNDEFINED"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sTimeStamp"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "subtype": "UNDEFINED"," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sErrorLine"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": true," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "nErrorLine"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "number": "0"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sErrorMessage"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": true," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "dFolder"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "DICTIONARY"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": true," & @CRLF & _ " "output": false," & @CRLF & _ " "subtype": "STRING"," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "DICTIONARY"," & @CRLF & _ " "dictionary": []" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sModuleStatus"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": true," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sTag"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": true," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sSubject"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": true," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sEmail_Message"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": true," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sAttechment"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": true," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sEmailConfig_Path"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": true," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sRecipient"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sCc_Group"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sPrefix"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "rGet_Email_Info"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "RECORD"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "subtype": "UNDEFINED"," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "RECORD"," & @CRLF & _ " "record": {" & @CRLF & _ " "schema": []," & @CRLF & _ " "values": []" & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sFrom_Address"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sEmail_Server_Host"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "nEmail_Server_Port"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "NUMBER"," & @CRLF & _ " "number": "0"" & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sPassword"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sUsername"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "sEmail_Server_Port"," & @CRLF & _ " "description": ""," & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "readOnly": false," & @CRLF & _ " "input": false," & @CRLF & _ " "output": false," & @CRLF & _ " "subtype": "UNDEFINED"," & @CRLF & _ " "defaultValue": {" & @CRLF & _ " "type": "STRING"," & @CRLF & _ " "string": """ & @CRLF & _ " }" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "breakpoints": []," & @CRLF & _ " "packages": [" & @CRLF & _ " {" & @CRLF & _ " "name": "Datetime"," & @CRLF & _ " "version": "2.2.0-20201014-042531"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Datetime"," & @CRLF & _ " "version": "2.2.0-20201014-042531"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Delay"," & @CRLF & _ " "version": "2.2.0-20201014-042532"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Delay"," & @CRLF & _ " "version": "2.2.0-20201014-042532"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Email"," & @CRLF & _ " "version": "3.1.0-20201104-062204"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Email"," & @CRLF & _ " "version": "3.1.0-20201104-062204"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "ErrorHandler"," & @CRLF & _ " "version": "2.2.0-20201014-042541"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "ErrorHandler"," & @CRLF & _ " "version": "2.2.0-20201014-042541"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Excel_MS"," & @CRLF & _ " "version": "6.3.0-20211028-055115"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Excel_MS"," & @CRLF & _ " "version": "6.3.0-20211028-055115"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "If"," & @CRLF & _ " "version": "2.1.0-20200921-085758"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "If"," & @CRLF & _ " "version": "2.1.0-20200921-085758"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "LogToFile"," & @CRLF & _ " "version": "2.2.0-20201014-042806"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "LogToFile"," & @CRLF & _ " "version": "2.2.0-20201014-042806"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Loop"," & @CRLF & _ " "version": "2.1.0-20201014-042808"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Loop"," & @CRLF & _ " "version": "2.1.0-20201014-042808"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Number"," & @CRLF & _ " "version": "2.1.0-20201014-042823"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Number"," & @CRLF & _ " "version": "2.1.0-20201014-042823"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Screen"," & @CRLF & _ " "version": "2.1.0-20201014-043037"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Screen"," & @CRLF & _ " "version": "2.1.0-20201014-043037"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Step"," & @CRLF & _ " "version": "2.0.0-20201023-202658"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "Step"," & @CRLF & _ " "version": "2.0.0-20201023-202658"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "String"," & @CRLF & _ " "version": "3.1.0-20201014-043052"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "String"," & @CRLF & _ " "version": "3.1.0-20201014-043052"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "System"," & @CRLF & _ " "version": "3.0.0-20200921-090225"" & @CRLF & _ " }," & @CRLF & _ " {" & @CRLF & _ " "name": "System"," & @CRLF & _ " "version": "3.0.0-20200921-090225"" & @CRLF & _ " }" & @CRLF & _ " ]," & @CRLF & _ " "migrationJournalReviewIds": []," & @CRLF & _ " "workItemTemplateName": null," & @CRLF & _ " "properties": {" & @CRLF & _ " "botCodeVersion": "1"," & @CRLF & _ " "improvedNumberSupport": false," & @CRLF & _ " "timeout": "0s"," & @CRLF & _ " "automationPriority": "PRIORITY_MEDIUM"" & @CRLF & _ " }" & @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