Whilst decowski's regex would work just fine, here's a regex which more literally describes what you're after: match a dot, only when followed by either whitespace or the capital E character or the end of the string and replace that dot with "[INS].". It makes uses of a lookahead assertion to catch only the dots that you want.
PHP Code:
$string = preg_replace("#\.(?=\s|E|$)#", "[INS].", $string);
Off Topic:
If you are unfamiliar with the syntax or concept of lookahead assertions (in this case, to match dots followed by specific characters or points in the string) then a helpful introduction can be found in
Lookahead and Lookbehind Zero-Width Assertions.
A more basic expression with which you might be more familiar would be
#\.(\s|E|$)# with the associated replacement string
[INS]$0.
Bookmarks