regexp parsing bug if unknown option is used

free must not be called - this isn't POSIX strndup. I also removed a redundant space in the message string.