|
||
|
![]() |
![]() |
Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
Herramientas |
#1
|
||||
|
||||
RegEx backreference no me funciona con Variable Replace
No sé si cambió algo en las últimas versiones de Tasker pero no me sale el resultado.
¿Alguna información? |
|
#2
|
||||
|
||||
Tengo la versión 4.9u1 de Tasker. He probado esta tarea y funciona perfectamente:
prueba (124) A1: Variable Set [ Name:%aaa To:aaaxyaaaxzaaa Recurse Variables:Off Do Maths:Off Append:Off ] A2: Variable Search Replace [ Variable:%aaa Search:x. Ignore Case:Off Multi-Line:Off One Match Only:Off Store Matches In:%aab Replace Matches:Off Replace With: ] A3: Flash [ Text:%aaa %aab() %aab1 Long:Off ] En %aab1 sale xy y en %aab2 xz Edito: vale te refieres al backreference. Perdona pero he leído demasiado rápido. Si quieres ponme la expresión regex y la pruebo, aunque supongo que el resultado será el mismo que el tuyo. Enviado desde mi A0001 mediante Tapatalk
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Última edición por mlesir Día 07/01/17 a las 22:23:23. |
#3
|
||||
|
||||
Mi resultado es nulo y debería funcionar.
Quiero saber el nombre del último perfil que se activó. Mlesir, tienes que tener 1 activo como mínimo. Var set %pactive a %PACTIVE Buscar en %pactive: .*,(.+), Reemplazar: $1 Lo intenté también con \1 pero nada. Última edición por GraphicAdventure Día 07/01/17 a las 22:47:57. |
#4
|
||||
|
||||
Pues con este regex, usando los "lookaround", consigues meter en %aab1 el nombre del último perfil sin comas. Ojo que está marcado "Una sola coincidencia" y ojo que si no me equivoco en javascript no funcionan todos los lookaround :
prueba (124) A1: Variable Set [ Name:%pactive To:,perfil uno,perfil dos,perfil tres, Recurse Variables:Off Do Maths:Off Append:Off ] A2: Variable Search Replace [ Variable:%pactive Search:[^,]*(?=,$) Ignore Case:Off Multi-Line:Off One Match Only:On Store Matches In:%aab Replace Matches:Off Replace With: ] A3: Flash [ Text:%aaa %aab() %aab1 Long:Off ] Enviado desde mi A0001 mediante Tapatalk
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
#5
|
||||
|
||||
Sí puedo hacerlo así pero estoy seguro que una referencia a grupos funcionaba.
La eficiencia disminuye drásticamente cuando la búsqueda no es progresiva, o sea, cuando hay backtracking. No siempre es posible evitar pero se puede reducir. En tu expresión con cambiar el * a + ya evitas algo de backtracking. Puedes comprobar los pasos que necesita una expresión en la página regex101.com en el flavor pcre (php). RegEx siempre empieza de izquierda a derecha, infelizmente no se puede empezar a leer desde el final de la expresión. Última edición por GraphicAdventure Día 09/01/17 a las 00:51:22. |
Gracias de parte de: | ||
#6
|
||||
|
||||
La verdad es que nunca usé lo que dices. Probé tu expresión y tampoco me funcionó.
La consultaré seguro. Gracias Graphic. Enviado desde mi A0001 mediante Tapatalk
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
#7
|
||||
|
||||
Grupo es lo que pones entre () y la referencia a ese grupo si es para reemplazar es $x donde x es el número del grupo, si es dentro de la expresión es \x.
Pero solo está disponible dentro de la búsqueda o para reemplazar, no se puede guardar en una variable. Con .*,(.+), estoy diciendo que quiero guardar lo que esté dentro de los paréntesis. Grupos que no se capturan son (?:) o lookarounds. En otros flavors existe un grupo atómico (?>) que no permite backtracking lo que resulta muy eficiente pero javascript no tiene. Lo único que se asemeja es el lookahead. Tengo que ver que pasa con esto. Última edición por GraphicAdventure Día 09/01/17 a las 22:04:23. |
#8
|
||||
|
||||
Acabo de descubrir que pasa.
![]() Ahora sí funciona. Es la predicción de texto del teclado que cuando escribo una coma pone un espacio automáticamente. Se ve todo tan junto que ni me di cuenta. Ya me pasó más veces al poner condiciones. Tengo que desactivar esto cuando abra Tasker pero me parece que tendré que hacerlo manualmente o con input tap. "El hombre es el único animal que tropieza dos veces en la misma piedra." |
#9
|
||||
|
||||
La de disgustos que ha dado el predictivo en este foro!
Yo utilizo otro teclado cuando estoy en el en Tasker. Se le puede poner un contexto de aplicación (tasker) y usar una acción de cambiar el teclado. El teclado si te interesa te digo el nombre, es que lo tengo en la Tablet. Enviado desde mi A0001 mediante Tapatalk
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
#10
|
||||
|
||||
Por probarlo no pierdo nada, dímelo claro.
Para Tasker mejor uno sencillo sin tecnologías. Soy de viejos hábitos y sigo presionando tecla por tecla, nunca probé eso de swype/swiftkey. El que viene con mi S3 está bien salvo que ocupa la mitad de la pantalla y para escribir en páginas web no veo casi nada. ¿No sé si hay alguno que ocupe menos pantalla? El GBoard de Google parece bien para un uso diario. Última edición por GraphicAdventure Día 10/01/17 a las 22:21:45. |
#11
|
||||
|
||||
El teclado es thumb keyboard:
https://play.google.com/store/apps/d...OVOYjeUZPJjqgB ![]() Ventajas: Tener los cursores La fila de arriba del todo eliges que caracteres/simbolos escriben. Super util poder tener dos teclas para copy/paste Puedes elegir el tamaño del teclado y la configuración, incluso por separado: una vertical otra para horizontal. Enviado desde mi T1-701u mediante Tapatalk
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
Los siguientes 2 usuarios han agradecido a mlesir su comentario: | ||
![]() |
![]() |
||||||
|