trial.string<-c("Hat","coif","hatter","HATS","plushy","no hat","what","hat no","hats","HAT, what","what, hat, no, hats","A water hat")
stringr::str_replace_all(trial.string,
"(?i)(?<!\\b(?:no|what)\\b.{0,1000})\\bhats?(?!.*\\b(?:no|what)\\b)", " ")
dHJpYWwuc3RyaW5nPC1jKCJIYXQiLCJjb2lmIiwiaGF0dGVyIiwiSEFUUyIsInBsdXNoeSIsIm5vIGhhdCIsIndoYXQiLCJoYXQgbm8iLCJoYXRzIiwiSEFULCB3aGF0Iiwid2hhdCwgaGF0LCBubywgaGF0cyIsIkEgd2F0ZXIgaGF0IikKc3RyaW5ncjo6c3RyX3JlcGxhY2VfYWxsKHRyaWFsLnN0cmluZywgCiAgICAgICIoP2kpKD88IVxcYig/Om5vfHdoYXQpXFxiLnswLDEwMDB9KVxcYmhhdHM/KD8hLipcXGIoPzpub3x3aGF0KVxcYikiLCAiICIp