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