la expresion regular mas exacta vendria siendo con boundary el cual se expresa con
\b. no se como explicar el boundary porque rara vez lo utilizo. en terminos basico representa la posicion entre una palabra y cualquier cosa que no sea un caracter alfanumerico. o dicho de otra forma, cualquier caracter que no corresponda a la clase
word (\w)
Código:
var reg = /\barbol\b/g;
reg.test("arbol"); // devuelve true a pesar de no tener ningun caracter antes ni despues;
reg.test("arboles"); // devuelve false, luego de arbol no contiene un caracter de la clase \W;
reg.test("...arbol..."); // devuelve true, el punto no es parte de la clase \w;
reg.test("un _arbol de navidad"); // devuelve false, el guion bajo es parte de la clase \w;