POSIX bracket expressions can be negated. [^x-z[:digit:]] matches a single character that is not x, y, z or a digit.
In my actual situation I would like to validate the user input of an absolute file path.
The fastest way to validate the file is to try to open it... If fopen() or CreateFile() fails, the file isn't there.
There may be a simpler way, but it would not be much simpler.
You have to count the characters and write the regex dynamically. That was easy.
Getting the dog-gone Regex to be as Ultimate as you can was mind numbing !