Brackets are use to create character classes, like [a-z] for lowercase letters; as such, special characters like dot-match-all have no special meaning within the brackets.
Inside a character class, only \^]- have non-literal meanings.
$ when inside a regex gets passed to the regex instead of being translated by calibre first.