Hola a todos!
Estoy haciendo un buscador y quiero colorear el las palabras que se están
buscando cuando se muestra el contenido que coincide con la búsqueda.
Comencé a hacerlo substitullendo con eregi_replace, la plalabra por la
palabra entre <font color="red"> $palabra </font>. El poblema es que en el
contenido de la base de datos en el cual realizo la búsquedas en ocasiones
contiene HTML, con lo cual si por ejemplo la búsqueda es una 'o' hace los
cambios para la etiqueta '<font' del HTML que quiero mostrar y el contenido
ya no se bien. Quería utilizar un patron para intentar solucionarlo pero no
consigo q me funcione bien, mi objetivo es evitar estos casos. El código que
estoy utilizando es el siguiente:
$pattern ="";
$pattern = "^\(\"";
$pattern .= "\"<font\"\([a-z]|[A-Z]|[0-9]|\\\"|=\\ \)*>\)";
$pattern .= $search_array[$i];
$remplacePattern = "\\1<font
color=\"$matchColor\">$search_array[$i]</font>";
$name = eregi_replace($pattern,$remplacePattern, $name);
Pero lo subtitulle todo por la palabra de búsqueda, y no solo la palabra,
estoy utilizando \\1 para poner delante de nuevo el contenido que subtituye,
pero no va. Alguien sabe donde esta el problema???? Gracias por adelanttado.
Félix.