Может, я чего-то не понимаю?
Пытаемся осмысленно заменить все "and" на "&&".
a="asdand andor and ope(and)and asd and(1)";
b=a.replace(/([\(\)\r\n ])+and([\(\)\r\n ])+/g,"$1&&$2");
console.log(b);
alert(b);
Выведет: asdand andor && ope(&&)
and asd &&(1)
Жирным выделил то, что должно было быть заменено, но почему-то пропущено.