How can I use the negation within square brackets as an exception, to find e. g. everything between a-z except for the the range from m-o? [a-z^m-o]?
[a-z^m-o]
By
You should be able calculate the difference yourself.
[a-lp-z]
If the regex engine supports lookahead assertion, you could use
(?![m-o])[a-z]
but this would probably be less efficient.