#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?<!\{)\{([^\s}]+)\}(?!\})"
Local $sString = "<?php" & @CRLF & _
"" & @CRLF & _
"return" & @CRLF & _
"[" & @CRLF & _
" 'server'=> [" & @CRLF & _
" 'host'=> 'smtp.saluddigital.net'," & @CRLF & _
" //'helo'=> url('domain')," & @CRLF & _
" 'username'=> 'php7@saluddigital.net'," & @CRLF & _
" 'password'=> 'x5~JkKU+X(NY4R$C'," & @CRLF & _
" 'port'=> '25'," & @CRLF & _
" 'charset'=> '{\web.charset}'," & @CRLF & _
" ]," & @CRLF & _
" 'mails'=> [" & @CRLF & _
" // Para especificar varias direcciones, separarlas por comas" & @CRLF & _
" // Para especificar un nombre para una dirección, usamos el formato" & @CRLF & _
" // estándard nombre <email>, <email>." & @CRLF & _
" // Ejemplos:" & @CRLF & _
" // 'jatubio@saluddigital.net'" & @CRLF & _
" // 'Andrés Pozo <apozo@saluddigital.net>, ergon@saluddigital.net'" & @CRLF & _
" //" & @CRLF & _
" // Usar {domain} para sustituirlo por el dominio actual" & @CRLF & _
" 'default'=> [" & @CRLF & _
" 'asunto'=> '{\web.titulo}'," & @CRLF & _
" 'from'=> '{\web.titulo} <info@[url domain]>'," & @CRLF & _
" 'replyto'=> ''," & @CRLF & _
" // Poner siempre en copia" & @CRLF & _
" 'cc'=> ''," & @CRLF & _
" // Poner siempre en copia oculta" & @CRLF & _
" 'cco'=> ''," & @CRLF & _
" // Direcciones para enviar la copia de administración" & @CRLF & _
" 'admin'=> 'jatubio@saluddigital.net'," & @CRLF & _
" // Activar/Desactivar la copia de administración" & @CRLF & _
" 'adminsend'=> true," & @CRLF & _
" // Enviar una copia si está activado el flag de debug" & @CRLF & _
" 'debug'=> 'jatubio@saluddigital.net'," & @CRLF & _
" // Activar/Desactivar la copia de debug" & @CRLF & _
" 'debugsend'=> true," & @CRLF & _
" // Modificar alguna de las opciones anteriores si cumple el filtro" & @CRLF & _
" 'filtros'=> [" & @CRLF & _
" 'paises'=> [" & @CRLF & _
" 'filtro'=> [" & @CRLF & _
" 'Pais'=>'España'," & @CRLF & _
" ]," & @CRLF & _
" 'opciones'=> [" & @CRLF & _
" 'asunto'=>'Hola desde España'," & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" // Formulario de contacto" & @CRLF & _
" 'contacto'=> [" & @CRLF & _
" 'asunto'=> 'Contacto desde {\web.titulo}'," & @CRLF & _
" 'from'=> '{\web.titulo} <contacto@[url domain]>'," & @CRLF & _
" // Campos a incluir en el [repetir datos]" & @CRLF & _
" // Si está vacío, se incluyen todos" & @CRLF & _
" 'campos'=> ['Nombre', 'Apellidos', 'Telefono', 'EMail', 'Pais', 'Curso', 'Comentario']," & @CRLF & _
" 'campoTo' => 'Nombre <EMail>'," & @CRLF & _
" //template=> 'contacto'," & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" 'templates'=> [" & @CRLF & _
" 'base'=>'General'," & @CRLF & _
" ]," & @CRLF & _
"];" & @CRLF & _
"" & @CRLF & _
"//--------------------------------------------------------------------" & @CRLF & _
"//--------------------------------------------------------------------" & @CRLF & _
"// Ejemplos" & @CRLF & _
"//--------------------------------------------------------------------" & @CRLF & _
"//--------------------------------------------------------------------" & @CRLF & _
"return" & @CRLF & _
"[" & @CRLF & _
" 'server'=> [" & @CRLF & _
" 'host'=> 'smtp.saluddigital.net'," & @CRLF & _
" 'helo'=> url('domain')," & @CRLF & _
" 'username'=> 'php7@saluddigital.net'," & @CRLF & _
" 'password'=> 'x5~JkKU+X(NY4R$C'," & @CRLF & _
" 'port'=> '25'," & @CRLF & _
" 'charset'=> '{\web.charset}'," & @CRLF & _
" ]," & @CRLF & _
" // Para especificar varias direcciones, separarlas por comas" & @CRLF & _
" // Para especificar un nombre para una dirección, usamos el formato" & @CRLF & _
" // nombre=>email." & @CRLF & _
" // Ejemplos:" & @CRLF & _
" // 'jatubio@saluddigital.net'" & @CRLF & _
" // 'Andrés Pozo=>apozo@saluddigital.net, ergon@saluddigital.net'" & @CRLF & _
" 'default'=> [" & @CRLF & _
" 'asunto'=> '{\web.titulo}'," & @CRLF & _
" 'from'=> '{\web.titulo}=>info@[url domain]'," & @CRLF & _
" 'replyto'=> ''," & @CRLF & _
" // Poner siempre en copia" & @CRLF & _
" 'cc'=> ''," & @CRLF & _
" // Poner siempre en copia oculta" & @CRLF & _
" 'cco'=> ''," & @CRLF & _
" // Direcciones para enviar la copia de administración" & @CRLF & _
" 'admin'=> 'jatubio@saluddigital.net'," & @CRLF & _
" // Activar/Desactivar la copia de administración" & @CRLF & _
" 'adminsend'=> true," & @CRLF & _
" // Enviar una copia si está activado el flag de debug" & @CRLF & _
" 'debug'=> 'jatubio@gmail.com'," & @CRLF & _
" // Activar/Desactivar la copia de debug" & @CRLF & _
" 'debugsend'=> true," & @CRLF & _
" // Modificar alguna de las opciones anteriores si cumple el filtro" & @CRLF & _
" 'filtros'=> [" & @CRLF & _
" 'paises'=> [" & @CRLF & _
" 'filtro'=> [" & @CRLF & _
" 'Pais'=>'España'," & @CRLF & _
" ]," & @CRLF & _
" 'opciones'=> [" & @CRLF & _
" 'asunto'=>'Hola desde España'," & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" 'cursos' => [" & @CRLF & _
" 'filtro'=> [" & @CRLF & _
" 'Curso'=>'Consulta General'," & @CRLF & _
" ]," & @CRLF & _
" 'opciones'=> [" & @CRLF & _
" 'cco'=>'consultas@gmai.com'," & @CRLF & _
" ]," & @CRLF & _
" ]" & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" // Formulario de contacto" & @CRLF & _
" 'contacto'=> [" & @CRLF & _
" 'asunto'=> 'Contacto desde {\web.titulo}'," & @CRLF & _
" 'from'=> '{\web.titulo} <contacto@[url domain]>'," & @CRLF & _
" 'filtros'=> [" & @CRLF & _
" 'paises'=> [" & @CRLF & _
" 'filtro'=> [" & @CRLF & _
" 'Pais'=>'Costa Rica, Francia, Perú'," & @CRLF & _
" ]," & @CRLF & _
" 'opciones'=> [" & @CRLF & _
" 'asunto'=>'Hola desde Costa Rica'," & @CRLF & _
" 'from'=> '{\web.titulo" & @CRLF & _
"} <costarica@[url domain]>'," & @CRLF & _
" ]," & @CRLF & _
" 'activo'=> false," & @CRLF & _
" ]," & @CRLF & _
" 'casos'=> [" & @CRLF & _
" 'filtro'=> [" & @CRLF & _
" 'NumCaso'=>'1, 8, 10'," & @CRLF & _
" ]," & @CRLF & _
" 'opciones'=> [" & @CRLF & _
" '{{asunto}}'=>'Consulta sobre un caso'," & @CRLF & _
" 'cc'=> 'especialista@gmail.com'," & @CRLF & _
" ]," & @CRLF & _
" ]," & @CRLF & _
" 'cursos'=> [" & @CRLF & _
" 'activo'=> false," & @CRLF & _
" ]" & @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