JavaScript - extraer valores de una cadena

   
Vista:

extraer valores de una cadena

Publicado por oren (10 intervenciones) el 12/09/2014 00:11:25
Hola, estoy intentado extraer las medidas de un armario a traves de un string y no logro que me lo haga, la funcion es algo asi:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var str = "45L	   x	 30P   x   101A";
var zAncho='';
var n = str.indexOf("P");
var strlen=str.length-1;
 
for(i=n-1;i>-1,i--){
	if(str[i]==' '){
		break;
		for(x=i+1;x<strlen;x++){
			if(str[x]=='P'){
				break;
			}
			else{
				zAncho+=str[x];
			}
		}
	}
}

La idea es sabiendo donde esta P ir hacia atras en la cadena hasta encontrar un espacio, y a partir de ahi añadir los numeros hasta dar con P y salir. He probado eliminando el primer break en caso de que me echara de todo el for, pero sigue sin mostrarme nada, me estoy dejando algun detalle? Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

extraer valores de una cadena

Publicado por xve (1595 intervenciones) el 12/09/2014 13:48:25
Hola Oren, tu manera de hacerlo, la veo un poco complicada... haber que te parece esta manera mas sencilla.
1
2
3
4
5
6
7
8
9
<script>
var str = "45L   x   30P   x   101A";
var values=str.split(" ");
for(var val in values)
{
	if(values[val].length>0 && values[val][values[val].length-1]=="P")
		alert(values[val]);
}
</script>

Lo que hace, es separar la cadena por espacios, y luego los recorre todos buscando el que termina en P.

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

extraer valores de una cadena

Publicado por oren (10 intervenciones) el 14/09/2014 22:33:15
Finalmente se me ocurrio otra forma de extraer las medidas, pero he probado tambien la tuya y funciona perfectamente, gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

extraer valores de una cadena

Publicado por xve (1595 intervenciones) el 15/09/2014 07:06:13
Hola Oren, que otra manera has encontrado? La puedes compartir?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

extraer valores de una cadena

Publicado por oren (10 intervenciones) el 15/09/2014 22:57:06
Basicamente empiezo en L y todo lo que sea espacio o x lo ignora, hasta llegar a P, y entonces para. Aqui dejo el codigo:

1
2
3
4
5
6
7
8
9
10
11
12
n = str.indexOf("L");
 
for(i=n+1;i<strlen;i++){
	if(str[i]!=' ' && str[i]!='x'){
		if(str[i]=='P'){
			break;
		}
		else{
			zAncho+=str[i];
		}
	}
}

Para extraer la altura aplico lo mismo pero empezando en P.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

extraer valores de una cadena

Publicado por xve (1595 intervenciones) el 16/09/2014 07:33:07
gracias por compartirlo Oren!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar