Página 1 de 1

Cadena de texto

Publicado: 19 Dic 2010, 23:14
por jriverac
Buenas tardes,

Tengo unas ventanas cuyos nombres son dinamicos salvo el principio. Por ejemplo

TITLE = "Text 19/12/2010 (test)"

Mañana todo sera igual salvo la fecha, es decir, la ventana:


TITLE = "Text 20/12/2010 (test)"

Estoy intentando hacer uso de las Regular Expressions pero no me aclaro.

Alguien puede ayudarme?

Gracias!

Juan

Re: Cadena de texto

Publicado: 20 Dic 2010, 19:11
por BasicOs
Si es para usar funciones como WinWait y similares, puedes simplemente cortar y poner la parte del texto inicial, seguramente no hay más ventanas que se llamen "Text" en vez de "Text 20/...", por defecto el te busca un trozo de texto y no el texto completo.
Salu22:)

Re: Cadena de texto

Publicado: 22 Dic 2010, 01:04
por jriverac
Gracias por la respuesta, pero por desgracia si que hay ventanas cuyo comienzo es comun... (ademas son ventanas que no estan abiertas, pero el autoit te las abre)

Me gustaria saber como poner el foco en una ventana como la descrita, muchas gracias!!

Juan

Re: Cadena de texto

Publicado: 22 Dic 2010, 01:10
por jriverac
Hola de nuevo,

¿podria pobrar con algo asi?

$title="TEXT ([0-9]{2})-([0-9]{2}) ([0-9]{2})/([0-9]{2})/([0-9]{4}) (TEXT)"

O algo similar??
(los parentesis del ultimo TEXT deben aparecer)

Re: Cadena de texto

Publicado: 22 Dic 2010, 02:28
por BasicOs
Aquí esta la ayuda.
e.g. List windows matching a classname defined by a regular expression

WinList("[REGEXPTITLE:#\d+]")
Creo que lo que quieres hacer es más simple, Si no puedes usar el comienzo puedes usar el trozo de texto "(test)" que está dentro.
Mode 2

Matches any substring in the title.

In this mode a window titled Untitled - Notepad would be matched by "Untitled - Notepad", "Untitled", "Notepad", "pad", etc.

e.g.

WinWait("Notepad")
WinWait("epad")

o bien crearlo con la función dia y més actual,
@MDAY Current day of month. Range is 01 to 31
@MON Current month. Range is 01 to 12
@YEAR Current four-digit year
If WinExist("Text "&@MDAY&"/12/2010 (test)","")
Si puedes poner un ejemplo de tu código podemos entender mejor cual es el objetivo
Salu22:)

Re: Cadena de texto

Publicado: 22 Dic 2010, 16:07
por jriverac
Muchas gracias, l ultima opción funciona perfecto!!!!

Como podria admitir cualquier día del mes, dejando el resto igual?

Saludos y gracias de nuevo

Juan

Re: Cadena de texto

Publicado: 22 Dic 2010, 17:00
por BasicOs
jriverac escribió:Muchas gracias, l ultima opción funciona perfecto!!!!

Como podria admitir cualquier día del mes, dejando el resto igual?

Saludos y gracias de nuevo

Juan
Si, en vez de @MDAY puedes poner una variable como $Eldiadelmes="22" a tu gusto, puedes ir cambiandolo según lo que busques,

Código: Seleccionar todo

$Eldiadelmes="22"
If WinExist("Text "&$Eldiadelmes&"/12/2010 (test)","")
e igual con el més y año.
Salu22:)

Re: Cadena de texto

Publicado: 22 Dic 2010, 18:54
por jriverac
Hola de nuevo,

Yo querria saber si puedo poner alguna regular expresion para que no tener que indicar el dia del mes. Ya que el titulo de la ventana puede llevar el dia de hoy, de ayer o de hace varios dias. Es un poco caotico. Tiene siempre el mismo formato, pero la fecha varia.

No se puede reemplazar el dia pr algo que obvie que dia del mes es?

Muchas gracias pr la ayuda

SAludos,

Re: Cadena de texto

Publicado: 22 Dic 2010, 23:09
por BasicOs
Puedes usar el lado derecho de la cadena que te da mucha información, con el MODE 2 según está algo más arriba:
"/2010 (test)"
Salu22:)