The expr(1) tool exits with status 1 if its output is zero. The `:'
operator evaluates to the substring matched by the outermost parentheses
in the pattern, if there are any. Therefore, matching `0' against the
`R_NUMERIC' pattern always appears to fail. Fix this and similar problems
by adding extra parens around the entire pattern, including the leading
sentinel `Q'.