String-manipulation bugs in v10.1
This is a bug in version 10.1.0. We decided it was serious enough to warrant a fix via an automatic paclet update. The paclet has been pushed live and Mathematica should install it automatically once it does a periodic check with the paclet server. It should take about a week or so.
To install it right away, you can do
PacletInstall["StringPatternFix"]
. You may need to restart the kernel for the fix to take effect, but after that it should work in all subsequent kernel sessions automatically.
Workaround for the two-argument Except
in string patterns issue until it is fixed:
StringCases["104702", DigitCharacter?(! StringMatchQ[#, "0"] &)]
Match the second argument directly, then use PatternTest
to check that it also doesn't match the first argument.