mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-22 06:11:32 +02:00
Now it becomes possible to reuse the quotes within arguments, allowing the parser to distinguish a ',' or ')' that is part of the value from one which delimits the argument. In addition, ',' and ')' may be escaped using a backslash. However, it is also important to keep in mind that just like in shell, quotes are first resolved by the word tokenizer, so in order to pass quotes that are visible to the argument parser, a second level is needed, either using backslash escaping, or by using an alternate type. For example, it's possible to write this to append a comma: http-request add-header paren-comma-paren "%[str('(--,--)')]" or this: http-request add-header paren-comma-paren '%[str("(--,--)")]' or this: http-request add-header paren-comma-paren %[str(\'(--,--)\')] or this: http-request add-header paren-comma-paren %[str(\"(--,--)\")] or this: http-request add-header paren-comma-paren %[str(\"(\"--\',\'--\")\")] Note that due to the wide use of '\' in front of parenthesis in regex, the backslash character will purposely *not* escape parenthesis, so that '\)' placed in quotes is passed verbatim to a regex engine.