Updated regex and added several tests

Note the lookahead (?=\s|$) which does not consume the extra space character after the end of the sentence.

Added question mark and exclamation mark to the end-of-sentence match. Removed the colon because in multiple tests it did not cause a problem; should be captured by the preceding .+?

Added unique test identifiers before each line to avoid double replacement.