Fix builtin character classes in numeric mode

In numeric mode, \d, \D, \s, \S, \w, or \W would always match a character, such that even things like "(?=\S)\s" would be a match.