In the first case, this part of your character class \)-< is a character range. Ie. It is equivalent to all the characters between ')' (ascii 41) and '<' (ascii 60), which includes ascii 44, ','.
In the second case, by placing the '-' as the first character inside the brackets, you've disabled the range function and it is treated as a normal character,
In reply to Re: Order of terms in square braces
by BrowserUk
in thread Order of terms in square braces
by throop
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |