Foros del Web » Programando para Internet » Javascript »

Modificar una cadena con Javascript

Estas en el tema de Modificar una cadena con Javascript en el foro de Javascript en Foros del Web. Buenas necesito la ayuda de ustedes si es posible. Necesito que una cadena de texto se transforme en otra mediante la sustitución de sus letras ...
  #1 (permalink)  
Antiguo 08/07/2008, 17:33
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
De acuerdo Modificar una cadena con Javascript

Buenas necesito la ayuda de ustedes si es posible.

Necesito que una cadena de texto se transforme en otra mediante la sustitución de sus letras previamente definidas. Me explico:

Me gustaría modificar "HOLA" por "AERB" tomando en cuenta que he definido H=A, O=E, L=R y A=B.

Mi idea es que una cadena de texto al presionar un botón cambie todas sus letras por las que defina.

Gracias por tu ayuda
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia
  #2 (permalink)  
Antiguo 08/07/2008, 20:45
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Respuesta: Modificar una cadena con Javascript

Hola michaelc:

No hay problema en hacerlo, simplemente tendrás que saber de antemano qué letra cambiar por cuál. Se hace con el método replace() de String.

¿Dónde te atascas?

Saludos.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #3 (permalink)  
Antiguo 08/07/2008, 21:01
Avatar de gepd  
Fecha de Ingreso: diciembre-2007
Mensajes: 142
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: Modificar una cadena con Javascript

supongo que puedes hacer algo así
Código:
function remplaza (texto){
    var r ={'H':'A','O':'E','L':'R','A':'B'};
    for(i=0;i <= texto.length-1;i++) { 
        document.write(r[texto[i]]);
    }
}
Código:
<a href="javascript:remplaza('HOLA');">click</a>
lo he modificado, aunque si te da flojera ya no es mi problema.... es como si yo opinara que hay muchos post tuyos que desvían los temas, en mi opinion sería mucho mejor no postear si no es algo referente al tema, para eso existen los MP, y los moderadores que si ellos lo consideran así espero que me lo hagan saber... pero lo he hecho por que peleas es lo que menos vengo a buscar...

Última edición por gepd; 09/07/2008 a las 07:58
  #4 (permalink)  
Antiguo 09/07/2008, 00:13
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: Modificar una cadena con Javascript

gepd, eh notado que tienes una tendencia a citar los mensajes que respondes aun que estén justo antes que tu respuesta. No se si los otros opinan lo mismo pero a mi se me hace un poco redundante y ademas haces los post mas largos y da mas flojera leerlos jajaja. No, ya hablando en serio, creo que seria mejor si no lo hicieras y si necesitas citar algún usuario, cita solo la parte del mensaje de dicho usuario que necesitas. Como digo, es solo mi opinión.
__________________
twitter: @imbuzu
  #5 (permalink)  
Antiguo 09/07/2008, 13:10
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
De acuerdo Respuesta: Modificar una cadena con Javascript

Muchisimas gracias a derkenuke por tu disposición gepd el código me trabaja excelente pues el replace() cuando trabajaba con todo el abecedario me daba un error extraño.

Gracias por su ayuda
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia
  #6 (permalink)  
Antiguo 09/07/2008, 13:16
Avatar de gepd  
Fecha de Ingreso: diciembre-2007
Mensajes: 142
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: Modificar una cadena con Javascript

michaelc que bueno que te halla sido de ayuda, intento hacerlo devolviendo la mano que ams de alguno me ha brindado en algun momento aquí y en otros lugares...

saludos y no dudes en consultar si tienes mas dudas...
  #7 (permalink)  
Antiguo 09/07/2008, 14:50
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
Sonrisa Respuesta: Modificar una cadena con Javascript

Cita:
Iniciado por gepd Ver Mensaje
michaelc que bueno que te halla sido de ayuda, intento hacerlo devolviendo la mano que ams de alguno me ha brindado en algun momento aquí y en otros lugares...

saludos y no dudes en consultar si tienes mas dudas...
Tengo una última duda pues soy novato en javascript por lo que puedes denotar, estoy intentando imprimir el resultado dentro de un textarea pero me devuelve una sola letra, no se la forma como almacenar todo el for () hasta el final en una variable que me contenga toda la cadena.

Es lo último que necesito si podrías ayudarme te lo agradecería.
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia
  #8 (permalink)  
Antiguo 09/07/2008, 15:21
Avatar de gepd  
Fecha de Ingreso: diciembre-2007
Mensajes: 142
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: Modificar una cadena con Javascript

aqui te dejo un ejemplo, fijate en el "+" que he agregado eso hace que la variable no se "reinicie" con los nuevos valores.

Código:
<html>
<head>
<script>
function remplaza (texto){
    var salida;
    var r ={'H':'A','O':'E','L':'R','A':'B'};
    for(i=0;i <= texto.length-1;i++) {        
        document.getElementById('texta').value += r[texto[i]];
    }
}
</script>
</head>
<body>
<textarea name="texta" id="texta"></textarea><br />
<a href="javascript:remplaza('HOLA');">click</a>
</body>
</html>  
  #9 (permalink)  
Antiguo 09/07/2008, 17:16
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
De acuerdo Respuesta: Modificar una cadena con Javascript

Cita:
Iniciado por gepd Ver Mensaje
aqui te dejo un ejemplo, fijate en el "+" que he agregado eso hace que la variable no se "reinicie" con los nuevos valores.

Código:
<html>
<head>
<script>
function remplaza (texto){
    var salida;
    var r ={'H':'A','O':'E','L':'R','A':'B'};
    for(i=0;i <= texto.length-1;i++) {        
        document.getElementById('texta').value += r[texto[i]];
    }
}
</script>
</head>
<body>
<textarea name="texta" id="texta"></textarea><br />
<a href="javascript:remplaza('HOLA');">click</a>
</body>
</html>  
Muchísimas gracias por tu ayuda he aprendido algo nuevo ya pude realizarlo como deseaba.
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia
  #10 (permalink)  
Antiguo 09/07/2008, 17:50
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
Respuesta: Modificar una cadena con Javascript

He Pillado un problema gepd el script no es compatible con Internet Explorer 7
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia
  #11 (permalink)  
Antiguo 09/07/2008, 17:51
Avatar de gepd  
Fecha de Ingreso: diciembre-2007
Mensajes: 142
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: Modificar una cadena con Javascript

ahora lo reviso para ver que puedo hacer
  #12 (permalink)  
Antiguo 09/07/2008, 18:06
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
Respuesta: Modificar una cadena con Javascript

Cita:
Iniciado por gepd Ver Mensaje
ahora lo reviso para ver que puedo hacer
Gracias por tu ayuda
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia

Última edición por michaelc; 09/07/2008 a las 19:00
  #13 (permalink)  
Antiguo 10/07/2008, 17:16
Avatar de gepd  
Fecha de Ingreso: diciembre-2007
Mensajes: 142
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: Modificar una cadena con Javascript

Bueno luego buscar y buscar he logrado hacer la respectiva correccion

Código:
function remplaza (texto){
    var salida;
    var r ={'H':'A','O':'E','L':'R','A':'B'};
    for(i=0;i <= texto.length-1;i++) {        
        document.getElementById('texta').value += r[texto.charAt(i)];
    }
}
he puesto en negrita la funcion que he cambiado, ésa es estandar y no deberias tener en ningun navegador. (charAt)

saludos
  #14 (permalink)  
Antiguo 13/07/2008, 16:24
Avatar de michaelc  
Fecha de Ingreso: abril-2005
Ubicación: Caracas
Mensajes: 112
Antigüedad: 19 años, 1 mes
Puntos: 3
Respuesta: Modificar una cadena con Javascript

Cita:
Iniciado por gepd Ver Mensaje
Bueno luego buscar y buscar he logrado hacer la respectiva correccion

Código:
function remplaza (texto){
    var salida;
    var r ={'H':'A','O':'E','L':'R','A':'B'};
    for(i=0;i <= texto.length-1;i++) {        
        document.getElementById('texta').value += r[texto.charAt(i)];
    }
}
he puesto en negrita la funcion que he cambiado, ésa es estandar y no deberias tener en ningun navegador. (charAt)

saludos
Muchas Gracias ahora me funciona sin ningún inconveniente!
__________________
http://www.michaelcrespo.net/
Diseñador Web, Gráfico y Multimedia
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 13:16.