Foros del Web » Programando para Internet » PHP »

¿como puedo agregar o reemplazar caracteres de una palabra?

Estas en el tema de ¿como puedo agregar o reemplazar caracteres de una palabra? en el foro de PHP en Foros del Web. Hola, el caso es este, tengo el nombre de las imagenes guardadas en un campo de la BD, loq ue quiero es aumentar o reemplazar ...
  #1 (permalink)  
Antiguo 09/09/2010, 11:17
 
Fecha de Ingreso: mayo-2004
Mensajes: 400
Antigüedad: 20 años
Puntos: 0
¿como puedo agregar o reemplazar caracteres de una palabra?

Hola, el caso es este, tengo el nombre de las imagenes guardadas en un campo de la BD, loq ue quiero es aumentar o reemplazar texto en dicho nombre, por ejemplo tengo estos nombres:

imagen1.jpg
imagen-2.jpg
imagen3-3.jpg

al leer los resultados de la BD son asi y quiero que les agregre lo siguiente


imagen1_tm.jpg
imagen-2_tm.jpg
imagen3-3_tm.jpg

osea que agrege el _tm o lo que sea antes del .jpg

Hice la prueba con substr_replace() pero no consegui hacerlo.

Un saludo
  #2 (permalink)  
Antiguo 09/09/2010, 11:23
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

Prueba esto :

Código PHP:
Ver original
  1. $str = 'imagen1.jpg';
  2. $str1 = substr($str, 0, strlen($str)-4) . '_tm' . substr($str, -4);
  3. echo $str1;

Y avisas si funciona o no.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #3 (permalink)  
Antiguo 09/09/2010, 11:26
 
Fecha de Ingreso: mayo-2004
Mensajes: 400
Antigüedad: 20 años
Puntos: 0
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

Muchas gracias spider_boy, parece que si funciona :)
  #4 (permalink)  
Antiguo 09/09/2010, 11:26
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

aqui tienes otra forma
Código PHP:
Ver original
  1. $dato=explode('.','imagen1.jpg');
  2. echo $dato[0].'_tm.'.$dato[1];
saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #5 (permalink)  
Antiguo 09/09/2010, 11:28
 
Fecha de Ingreso: mayo-2004
Mensajes: 400
Antigüedad: 20 años
Puntos: 0
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

gracias eits, tambien funciona, y yo me rompia la cabeza con substr_replace()
  #6 (permalink)  
Antiguo 09/09/2010, 11:29
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

No es por menospreciar a eits y su aporte, pero si el nombre de la imagen tiene otro punto en cualquier lugar, ese código no funcionaría.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #7 (permalink)  
Antiguo 09/09/2010, 11:31
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

pues estabas cerca
Código PHP:
Ver original
  1. echo str_replace('.','_tm.','imagen1.jpg');
saludos.

y es cierto lo que dice spider_boy , pero sin estas seguro que no tendrá otro punto es compatible jejeje
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #8 (permalink)  
Antiguo 09/09/2010, 11:37
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

Exacto. Pero recomiendo que se lea desde atrás hacia adelante el nombre de la imagen, para evitar esos imprevistos. Saludos
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #9 (permalink)  
Antiguo 09/09/2010, 11:45
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

bueno, para evitar lo que dice spider_boy hice esto, si tiene mas de un punto y si tiene mas de tres caracteres como extension
Código PHP:
Ver original
  1. $patron='/(\w+)\.([a-z]{3,4})/i';
  2. $cadena='imagen1.1.jepg';
  3. echo preg_replace($patron,'\\1_tm.\\2',$cadena);
espero y te sirva, saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #10 (permalink)  
Antiguo 09/09/2010, 11:47
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

Ok, eits win , no se me había ocurrido con regexp. Bien pensado .
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #11 (permalink)  
Antiguo 09/09/2010, 11:51
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

Cita:
Iniciado por spider_boy Ver Mensaje
Ok, eits win , no se me había ocurrido con regexp. Bien pensado .
ni a mi hasta que vi tus comentarios, saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #12 (permalink)  
Antiguo 09/09/2010, 12:05
 
Fecha de Ingreso: mayo-2004
Mensajes: 400
Antigüedad: 20 años
Puntos: 0
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

jeje muchas gracias a los dos, a mi me funcionan todas, y ahora por cual me decido? jajajaja que noo, que muchas gracias
  #13 (permalink)  
Antiguo 09/09/2010, 15:48
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: ¿como puedo agregar o reemplazar caracteres de una palabra?

una corrección en el de las expresiones regulares
Código PHP:
Ver original
  1. $patron='/(\w+)\.([a-z]{3,4})$/i';
  2. $cadena='imagen1.asd.jepg';
  3. echo preg_replace($patron,'\\1_tm.\\2',$cadena);
saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Etiquetas: caracteres, palabra, reemplazar
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 16:18.