Tasker Para hablar de todo lo relacionado con la aplicación tasker

Respuesta
 
Herramientas
  #1  
Viejo 28/03/16, 19:34:11
Array

[xs_avatar]
leromaro leromaro no está en línea
Miembro del foro
 
Fecha de registro: ago 2014
Localización: Chascomús, Argentina
Mensajes: 245
Modelo de smartphone: Xiaomi Mi A3
Tu operador: Claro
expresión regular para búsqueda dentro de una variable

Hola: quisiera realizar esta tarea, estoy buscando y no lo encuentro y/o no lo entiendo.
Hago una consulta HTTP get para buscar en la página de la componía telefónica el llamante.
Recibo extensos resultados donde está el nombre. Paso el resultado de %HTTPD a una variable.
Lo que hice fue llamar a mi celular con el fijo y buscar dentro de esa variable mi nombre, una vez ubicado veo que está dentro de esta estructura
var ADV0 = ['apellido y nombre']
Para extraerlo separo la variable %llamada usando var ADV0 = ['
y luego separa %llamada2 usando ' para que me quede el nombre


Esta es la tarea

Identificar Llamada (54)
A1: Si (if) [ %CNUM ~ %CNAME & %CNUM !~ 0 ]
A2: HTTP Get [ Servidor:Puerto:www.paginasblancas.com.ar Ruta:telefono/%CNUM Atributos: Cookies: User Agent: Cuenta atrás:10 Tipo Mime: Archivo de salida: Confiar en cualquier Certificado:Apagado ]
A3: JavaScriptlet [ Código:var llamada = global("HTTPD"); Librerías: Salida Automática:Encendido Cuenta atrás (segundos):45 ]
A4: Separar variable [ Nombre:%llamada Separador:var ADV0 = [' Eliminar base:Apagado ]
A5: Separar variable [ Nombre:%llamada2 Separador:' Eliminar base:Apagado ]
A6: Notificación [ Título:Llamada de %llamada21 Texto: Icono:null Número:0 Permanente:Apagado Prioridad:3 ]
A7: Flash [ Texto:%llamada21 Largo:Encendido ]
A8: Fin si (End if)

Mi idea era empezar a usar javascript y hacer todo junto, pero he llegado a probar con el comando split y no he podido, ahora esot probando con buscar y reemplazar y mi pregunta es que expresión regular puedo usar para, en un paso, buscar lo que está dentro de "var ADV0 = ['xxxxxxx']" y que me lo guarde en una variable que contenga xxxxxxx.


Espero que alguien pueda ayudarme, el perfil anda bien pero quisiera aprender a hacerlo de otra forma.
Gracias.

Última edición por leromaro Día 29/03/16 a las 17:31:14.
Responder Con Cita
Gracias de parte de:


  #2  
Viejo 29/03/16, 09:26:15
Array

[xs_avatar]
maid450 maid450 no está en línea
Miembro del foro
 
Fecha de registro: sep 2009
Localización: Valencia
Mensajes: 450
Modelo de smartphone: Nexus 5 / Nexus 7
Tu operador: Yoigo
Hola leromaro, puedes hacerlo así:
Despues de la acción HTTP GET, en el javascriptlet usas este código:
Código:
var nombre = /.*?ADV0[^']*'([^']*)'.*/.exec(global('HTTPD'));
if(nombre.length > 1) nombre = nombre[1];
else flash('No se ha encontrado el nombre en la respuesta');
Con eso te sobran las acciones de separar variable y en el resto de la tarea tendrás el nombre disponible en %nombre.
En caso de no encontrar ese texto en la respuesta mostrará No se ha encontrado el nombre en la respuesta y el valor de %nombre no servirá para nada...
Responder Con Cita
Los siguientes 4 usuarios han agradecido a maid450 su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]
  #3  
Viejo 29/03/16, 16:52:20
Array

[xs_avatar]
leromaro leromaro no está en línea
Miembro del foro
 
Fecha de registro: ago 2014
Localización: Chascomús, Argentina
Mensajes: 245
Modelo de smartphone: Xiaomi Mi A3
Tu operador: Claro
Genial: probado y funcionando, prometo tratar de entenderlo, pero seguro que jamás iba a llegar solo a la respuesta.
Muchas gracias.
Responder Con Cita
Los siguientes 2 usuarios han agradecido a leromaro su comentario:
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Otro software para Android > Tasker



Hora actual: 06:23:22 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /