Fixed error with semicolon errors in strings

A single semicolon in a string literal, such as ";", would be improperly flagged as an error using the old match.  Switching to zero width patterns to match the absence of the proper whitespace before and after the semicolon fixes that behavior.