fix pattern to consider valid '_' in value

by definition a value (OBJECT_IDENT in the BELScript grammar) can be a
letter, digit, or an underscore...[a-zA-Z_0-9], so we only need to quote if
we can find a character outside of these ranges, hence find [\W]