@jemonge, tal como te comente... el tema va más por el lado de servidor y estas discutiendo en un foro front-end. en todo caso, si tu documento está codificado en utf-8 (así pareces indicarlo en temas anteriores), creo que parte del problema es que PCRE ve la expresión como bytes individuales. por ejemplo, la "ñ" en utf-8 está compuesto de dos bytes,
C3 B1. así sucesivamente con las demás vocales acentuadas. cuando php recibe el parámetro, lo recibe en utf-8 porque encodeURIComponent codifica el contenido en utf-8. utiliza el modificador "u" para PCRE el cual le indica que el patrón está en utf-8. supongo que con eso evita que PCRE vea el patrón como bytes individuales. es decir '/patron/u'. aca un ejemplo funcionando,
http://phpscripting.awardspace.us/