Foros del Web » Programando para Internet » PHP »

Ayuda con str_replace

Estas en el tema de Ayuda con str_replace en el foro de PHP en Foros del Web. Hola Foro, mi cosulta sobre esta función es que al usarla veo que es case sensitive y tambien no reconoce caracteres acentuados o similares. Hay ...
  #1 (permalink)  
Antiguo 01/09/2010, 09:53
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 15 años
Puntos: 6
Ayuda con str_replace

Hola Foro, mi cosulta sobre esta función es que al usarla veo que es case sensitive y tambien no reconoce caracteres acentuados o similares.

Hay alguna función tipo 'str_replace' que sea menos sensible?

La utilidad que le estoy dando a esta función es resaltadar un resultado de busqueda y las palabras que coinciden sean cambiadas de color por medio de css.

Si busco por ej: Hola
y en la base de datos existe: hola

El buscador da como resultado la palabra 'Hola' (correcto) pero no me la colorea.

Bue, espero ser claro, cualquier cosa me avisan que detallo el codigo.

Saludos y gracias,
Gustav.
  #2 (permalink)  
Antiguo 01/09/2010, 10:40
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Ayuda con str_replace

usa preg_replace() en dicho caso....

PCRE cuenta con soporte para caracteres Unicode a través del meta carácter \pL
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 01/09/2010, 10:43
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Ayuda con str_replace

Cita:
Iniciado por pateketrueke Ver Mensaje
usa preg_replace() en dicho caso....

PCRE cuenta con soporte para caracteres Unicode a través del meta carácter \pL
y como lo harías para buscar una palabra con \pL ...? es solo curiosidad porq a mi no se me ocurrió
__________________
More about me...
~ @rhyudek1
~ Github
  #4 (permalink)  
Antiguo 01/09/2010, 10:54
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Ayuda con str_replace

hace tiempo hice un resaltado igual, por palabra... digamos un ejemplo... avión (con acento)

primero debes pasar la palabra por un filtro para eliminar los acentos, osea... reemplazarlos por su vocal natural... resultado: avion (sin acento)

luego, reemplazamos todas las vocales por sus variantes: a => (á|a|á|ä|â|...)

y bingo!!

el problema sería que si buscamos avi, debería seleccionar la palabra completa en nuestro contexto, osea avión y ahí es cuando usamos (?=\pL) o (?<\pL) para permitir lo dicho...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Última edición por pateketrueke; 01/09/2010 a las 11:00 Razón: bocales?
  #5 (permalink)  
Antiguo 01/09/2010, 10:56
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Ayuda con str_replace

si algo así imaginaba yo.. por eso no pillaba donde iba el \pL

saludos. :3
__________________
More about me...
~ @rhyudek1
~ Github

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:59.