Using \w as your regex pattern by itself will match any word character after any word boundary. That means that "Jethro's" would become "Jethro'S"
For matching words alone you can use
on *:input:*: {
if ($left($1,1) !isin / $readini($mircini,text,commandchar)) && (!$ctrlenter) && (!$inpaste) {
say $regsubex($1-,/(?<!\S)(\w)/g,$+($chr(2),$upper(\1),$chr(2)))
haltdef
}
}
If you still want to match words in other places like "[Hello]" then you need a more complex check if you want to do this accurately.