Obtener valores numéricos de un string

publicado por: Anonymous

Estoy tratando de obtener los valor numericos dentro de un string en este caso del nombre de los input:

Código:

var element   = $(this).attr("name").substring(6,7).match(/d+/);
var only      = $(this).attr("name").substring(7,10).match(/d+/);

El problema es que no siempre están ubicados en la misma posición o estos se corren ya que la cantidad de dígitos cambia.

Ejemplo de los names:

name="i_txt_7_14"
    
name="i_txt_27_14"

name="i_txt_136_140"

Como observaran hay un completo desfase si uso el substring(6,7) y substring(7,10) falla; como puedo obtener los datos numéricos teniendo en cuenta que siempre se cumple el patrón de separación i_txt_ y luego _.

¿Cómo puedo obtener los valores numéricos sin que falle, de forma dinámica?

solución

Bueno despues de investigar un poco, teniendo en cuenta que quiero manejar los valores en variables distintas la forma mas Viable para hacer uso del patron en la variable fue la siguiente:

var arr = $(this).attr("name").split('_');
var ele1= parseInt(arr[2]);
var ele2= parseInt(arr[3]);

Para los ejemplos indicados y siguiendo el patron del string:

name="i_txt_7_14" // Obtendrías ele1 = 7 tipo Entero, ele2 = 14 tipo Entero

name="i_txt_27_14" // Obtendrías ele1 = 27 tipo Entero, ele2 = 14 tipo Entero

name="i_txt_136_140" // Obtendrías ele1 = 136 tipo Entero, ele2 = 140 tipo Entero

El uso de Arrays fue realmente fácil teniendo en consideración que en mi ejemplo necesito acceder a la posición 2 y 3.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *