diff --git a/inc-html-squel.php3 b/inc-html-squel.php3 index 10fa80dde92e3725abda491ea46ce259c75673e5..a9dc3a8fe31c9caf12174cd409a516f89ea60d14 100644 --- a/inc-html-squel.php3 +++ b/inc-html-squel.php3 @@ -179,12 +179,13 @@ function phraser_args($texte, $fin, $sep, $result, &$pointeur_champ) { $args = ltrim(substr($suite,1)); $collecte = array(); while ($args && $args[0] != '}') { + if ($args[0] == '"') preg_match ('/^(")([^"]*)(")(.*)$/ms', $args, $regs); else if ($args[0] == "'") preg_match ("/^(')([^']*)(')(.*)$/ms", $args, $regs); else { - preg_match("/^([[:space:]]*)([^,}]*)([,}$fin].*)$/ms", $args, $regs); + preg_match("/^([[:space:]]*)([^$fin,([{}]*([(\[{][^])}]*[])}])?[^$fin,}]*)([,}$fin].*)$/ms", $args, $regs); if (!strlen($regs[2])) { erreur_squelette(_T('zbug_info_erreur_squelette'), $args);