this was checking for all possible characters that can't start variable, but was missing
checks for $ not followed by variable character