¿Por qué no puedo usar caracteres acentuados al lado de un límite de palabra?

Estoy tratando de hacer una expresión regular dinámica que coincida con el nombre de una persona. Funciona sin problemas en la mayoría de los nombres, hasta que me encontré con caracteres acentuados al final del nombre.

Ejemplo: Some Fancy Namé

La expresión regular que he usado hasta ahora es:

/\b(Fancy Namé|Namé)\b/i

Usado así:

"Goal: Some Fancy Namé. Awesome.".replace(/\b(Fancy Namé|Namé)\b/i, '<a href="#">$1</a>');

Esto simplemente no coincidirá. Si reemplazo el é con un e, coincide muy bien. Si trato de hacer coincidir un nombre como "Some Fancy Naméa", funciona bien. Si elimino la palabra ancla de límite de la última palabra, funciona bien.

¿Por qué la palabra bandera de límite no funciona aquí? ¿Alguna sugerencia sobre cómo solucionaría este problema?

He considerado usar algo como esto, pero no estoy seguro de cómo serían las penalizaciones de rendimiento:

"Some fancy namé. Allow me to ellaborate.".replace(/([\s.,!?])(fancy namé|namé)([\s.,!?]|$)/g, '$1<a href="#">$2</a>$3')

Sugerencias? Ideas?

Respuestas a la pregunta(5)

Su respuesta a la pregunta