Foros del Web » Programando para Internet » Javascript »

Obtener valor numérico de una cadena

Estas en el tema de Obtener valor numérico de una cadena en el foro de Javascript en Foros del Web. ¡Hola!.. Necesito obtener un valor numérico de una cadena... Es decir, obtener el número de imagen de fondo de un div, yo lo hago así: ...
  #1 (permalink)  
Antiguo 16/10/2010, 08:56
 
Fecha de Ingreso: enero-2010
Mensajes: 214
Antigüedad: 14 años, 10 meses
Puntos: 4
Obtener valor numérico de una cadena

¡Hola!.. Necesito obtener un valor numérico de una cadena... Es decir, obtener el número de imagen de fondo de un div, yo lo hago así:

Código Javascript:
Ver original
  1. var actualimg=document.getElementById('slide_box').style.backgroundImage.substr(13,1); <!-- ver imagen actual -->
  2. var actualimgnum=parseFloat(actualimg);

Pero no me funciona en algunos navegadores... NEcesito obtener el valor numérico de la cadena..

CADENA: url("./slide/9.png")

Necesito obtener el 9, o el número que sea que esté en esa posición....
__________________
Si tienes ganas de entretenerte un poco, echa un vistazo a Blubik Entretenimiento, por ver de qué va no pasa nada xD
  #2 (permalink)  
Antiguo 16/10/2010, 23:43
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Obtener valor numérico de una cadena

¿la propiedad css esta asignada en el atributo style del elemento? es como único puede funcionar el código porque de lo contrario backgroundImage devolveria un string vacio. por otro lado, se te haria mas facil obtener el numero -o el string que sea- utilizado expresiones regulares.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 17/10/2010, 11:01
 
Fecha de Ingreso: enero-2010
Mensajes: 214
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: Obtener valor numérico de una cadena

Gracias.. ya lo había intentado pero no se me ocurre ninguna expresión regular para este caso.. ¿cómo sería?... lo más que logro hacer es obtener un número entero, pero no cuando está mezclado con letras.
__________________
Si tienes ganas de entretenerte un poco, echa un vistazo a Blubik Entretenimiento, por ver de qué va no pasa nada xD
  #4 (permalink)  
Antiguo 17/10/2010, 15:43
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 5 meses
Puntos: 1012
Respuesta: Obtener valor numérico de una cadena

usa el método match y la expresión es esta /\d+$/
  #5 (permalink)  
Antiguo 17/10/2010, 15:59
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: Obtener valor numérico de una cadena

Cita:
Iniciado por IsabelM
usa el método match y la expresión es esta /\d+$/
Si te fijas el string para buscar es:url("./slide/9.png"), pero si usas /\d+$/ no encontrará nada, porque el número no está al final. La expresión tendría que ser /\d+/.
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #6 (permalink)  
Antiguo 17/10/2010, 16:08
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Obtener valor numérico de una cadena

para mi me esta, lo que el autor desea obtener es el nombre de la imagen. fijense que en el segundo mensaje cita numero mezclado con letras. pueden haber varias formas, una de ellas la clase \w seguido de las posibles extensiones de imagenes.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 18/10/2010, 07:34
 
Fecha de Ingreso: enero-2010
Mensajes: 214
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: Obtener valor numérico de una cadena

Gracias por sus respuestas... Estuve viendo información de las expresiones regulares... y al fin me quedo con esta: /\d+/.

El problema viene ahora con... sé saber si una cadena coincide o no con la expresión, pero... ¿Cómo hago para obtener el valor que me interesa, en este caso el número?

Ejemplo: url("./slide/9.png")

Me devuelve true porque contiene un número... Pero, ¿cómo sé ese número?

Un saludo.
__________________
Si tienes ganas de entretenerte un poco, echa un vistazo a Blubik Entretenimiento, por ver de qué va no pasa nada xD
  #8 (permalink)  
Antiguo 18/10/2010, 07:40
 
Fecha de Ingreso: enero-2010
Mensajes: 214
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: Obtener valor numérico de una cadena

EDITO.... ya funciona

Code:

Código Javascript:
Ver original
  1. var str=document.getElementById('slide_box').style.backgroundImage;
  2.     var patternst=/\d+/;
  3.     var actualimg=str.match(patternst); <!-- ver imagen actual -->
  4. var actualimgnum=parseFloat(actualimg);
__________________
Si tienes ganas de entretenerte un poco, echa un vistazo a Blubik Entretenimiento, por ver de qué va no pasa nada xD

Última edición por MuchaDiversion; 18/10/2010 a las 07:47
  #9 (permalink)  
Antiguo 18/10/2010, 08:00
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: Obtener valor numérico de una cadena

El método match() crea un array con todas las coincidencias que se han encontrado. Por tanto, debes acceder como actualimg[0].
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #10 (permalink)  
Antiguo 19/10/2010, 07:44
 
Fecha de Ingreso: enero-2010
Mensajes: 214
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: Obtener valor numérico de una cadena

Gracias... lo agregaré, para evitar problemas. Un saludo!
__________________
Si tienes ganas de entretenerte un poco, echa un vistazo a Blubik Entretenimiento, por ver de qué va no pasa nada xD
  #11 (permalink)  
Antiguo 19/10/2010, 08:13
Avatar de bitbow  
Fecha de Ingreso: julio-2006
Ubicación: Distrito Federal
Mensajes: 635
Antigüedad: 18 años, 4 meses
Puntos: 34
De acuerdo Respuesta: Obtener valor numérico de una cadena

Saludos,

Por que no intentas esto:

componente.value.replace(/[^.0-9]/g,'');

Esto te procesa toda la cadena y te devuelve solo el numero que se encuentre en ella, ejemplo:

de la siguiente cadena : ---> /slide/9.png
te devuelve : ---> 9

Suerte.
__________________
El ego es el mayor enemigo de un hombre inteligente.

Última edición por bitbow; 19/10/2010 a las 12:19

Etiquetas: cadenas
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 18:39.