Tengo una variable como 30_KK_1_KK_2

¿Cómo puedo obtener el valor después de la primera KK_ y la segunda KK_?

Para que la salida de First KK_ sea 1 y

Para el segundo KK_ es 2

Lo he intentado de esta manera

var str =  "30_KK_1_KK_2";
var n[] = str.split('_KK_');
alert(n[0]);
alert(n[1]);
0
Pawan 4 sep. 2014 a las 13:14

2 respuestas

La mejor respuesta

Tienes varios errores tipográficos.

1) No hay comillas de cadena alrededor de la constante de cadena

2) var n[] no es válida ... simplemente var n

3) Necesita obtener los elementos 1 y 2 ya que el elemento 0 es "30"

var str =  "30_KK_1_KK_2";
var n = str.split('_KK_');
alert(n[1]);
alert(n[2]);

JSFiddle: http://jsfiddle.net/TrueBlueAussie/w3mLgowc/1/

Una expresión regular es probablemente exagerada para un problema tan simple (y el delimitador es fijo).

1
Gone Coding 4 sep. 2014 a las 09:16

Si realmente quieres usar Regex puedes probar este código:

var str =  "30_KK_1_KK_2";
regex = /.*KK_(\d*)_KK_(\d*)/g;
value_1 = str.replace(regex,"$1");
value_2 = str.replace(regex,"$2");
alert(value_1);
alert(value_2);
0
Samuel Dauzon 4 sep. 2014 a las 10:08