Autor
|
Tema: Duda (Leído 2,779 veces)
|
DProduct
Desconectado
Mensajes: 236
I´m going to hack you
|
|
Duda
« en: 8 Febrero 2008, 15:27 pm » |
|
Tengo un problema en VB. Estoy intentando hacer un programa para corregir programas en Batch, pero tengo dos problemas que no sé realizar: 1.- Separar u textbox en varias variables (una por linea) y utilizar la estructura If en todas ellas 2.- Que si existe echoburro, se cambie a echo burro; no a echo ?.
|
|
|
En línea
|
Sé una cosa... dentro de escasos segundos vas a morir... ¿que porque lo sé?... Mira detrás de ti
|
|
|
Chefito
|
|
Re: Duda
« Respuesta #1 en: 10 Febrero 2008, 05:55 am » |
|
Para separar el contenido de un textbox en varias variables por linea utiliza la función linea=split(textbox1.text,vbcrlf) ,siendo linea una variable tipo matriz. Para utilizar la estructura if (que yo te recomendaria una estructura Select case) en todas ellas utiliza un bucle for n=0 to Ubound(linea) if linea(n)="lo que sea" then .......... ................. next
Para hacer lo 2º tendras que hacer otro bloque select case con condiciones, y tratar las cadenas con funciones como instr,left,etc. En tu caso sería (utilizando un if, ya que solo te voy a poner un caso), if instr(texto,"echo")<>0 then texto="echo " & mid(texto,4,len(texto))......esto si texto="echoburro". Saludos
|
|
|
En línea
|
Moderador del foro oficial de AutoIt en español: www.AutoIt.es.Todos tenemos inteligencia, lo malo es que algunos no nos acordamos donde la dejamos guardada
|
|
|
DProduct
Desconectado
Mensajes: 236
I´m going to hack you
|
|
Re: Duda
« Respuesta #2 en: 10 Febrero 2008, 14:09 pm » |
|
Muchas gracias por tu ayuda, pero todavia tengo un problema Yo quiero que si hay echo con otra palabra al lado, pero junta, se separé a echo y la palabra que este pegada. Puse echoburro como ejemplo. Yo quiero que se separe sea echoburro, echoelefante o echoasno, pero sin definir antes todas las posibilidades (porque puede haber millones)
|
|
|
En línea
|
Sé una cosa... dentro de escasos segundos vas a morir... ¿que porque lo sé?... Mira detrás de ti
|
|
|
Chefito
|
|
Re: Duda
« Respuesta #3 en: 10 Febrero 2008, 23:43 pm » |
|
Ni si quiera has probado lo que te dije por lo que veo . El ejemplo del final sirve para todas las palabras que empiezan por echo y continuan con lo que sea.....ejem:echoadios,echohola,etc. Te los separara en una cadena como echo adios, echo hola.......
|
|
|
En línea
|
Moderador del foro oficial de AutoIt en español: www.AutoIt.es.Todos tenemos inteligencia, lo malo es que algunos no nos acordamos donde la dejamos guardada
|
|
|
DProduct
Desconectado
Mensajes: 236
I´m going to hack you
|
|
Re: Duda
« Respuesta #4 en: 12 Febrero 2008, 13:48 pm » |
|
OK, muchas gracias
|
|
|
En línea
|
Sé una cosa... dentro de escasos segundos vas a morir... ¿que porque lo sé?... Mira detrás de ti
|
|
|
DProduct
Desconectado
Mensajes: 236
I´m going to hack you
|
|
Re: Duda
« Respuesta #5 en: 12 Febrero 2008, 14:17 pm » |
|
Tengo un problema: ¿Como termino el bucle?, porque cada vez que intento iniciarlo me da error y dice: Error de compilación: For sin Next. También falta una cosa: ¿Como puedo hacer que si en la primera linea falta algo, baje una linea y añada el @echo off?
|
|
« Última modificación: 12 Febrero 2008, 14:20 pm por Darth_Carl »
|
En línea
|
Sé una cosa... dentro de escasos segundos vas a morir... ¿que porque lo sé?... Mira detrás de ti
|
|
|
cassiani
Desconectado
Mensajes: 978
« Anterior | Próximo »
|
|
Re: Duda
« Respuesta #6 en: 12 Febrero 2008, 14:51 pm » |
|
Tengo un problema: ¿Como termino el bucle?, porque cada vez que intento iniciarlo me da error y dice: Error de compilación: For sin Next. También falta una cosa: ¿Como puedo hacer que si en la primera linea falta algo, baje una linea y añada el @echo off?
Esto si que es muy básico, parece que no has leido ningún manual de inicio al vb y ya va llagando la hora... Un bloque For debe ser cerrado siempre por el next, por eso tu error: For I = Inicio To Fin ... Next
|
|
|
En línea
|
|
|
|
Chefito
|
|
Re: Duda
« Respuesta #7 en: 12 Febrero 2008, 15:01 pm » |
|
Pues un bucle for acaba con next Pues eso, ponlo al final del bucle. Para bajar una linea y añadir eso tienes que poner: text1.text= vbcrlf & "@echo off" & vbcrlf & text1.text En esto no tengo ni idea de lo que hablas...¿Como puedo hacer que si en la primera linea falta algo?......explicate mejor. Faltar el que?.....No se si te refieres a una comparación con un texto: instr(linea(0),"texto a comparar")....esto da la posicion del texto comparado si lo encuentra, o 0 si no lo encuentra. Por cierto, lee un poco más que esto son cosas bastante basicas. Saludos.
|
|
|
En línea
|
Moderador del foro oficial de AutoIt en español: www.AutoIt.es.Todos tenemos inteligencia, lo malo es que algunos no nos acordamos donde la dejamos guardada
|
|
|
DProduct
Desconectado
Mensajes: 236
I´m going to hack you
|
|
Re: Duda
« Respuesta #8 en: 12 Febrero 2008, 18:09 pm » |
|
Con lo de que si falta algo, me refiero a que no ponga @echo off Si me lei algun manual de VB, pero no incluia nada sobre bucles
|
|
|
En línea
|
Sé una cosa... dentro de escasos segundos vas a morir... ¿que porque lo sé?... Mira detrás de ti
|
|
|
rdzlcs
Desconectado
Mensajes: 784
El cerebro, la experiencia y una pizca de suerte.
|
|
Re: Duda
« Respuesta #9 en: 12 Febrero 2008, 20:38 pm » |
|
MMMM por que no ponen a que se refieren con la duda.... creo que de todas formas vamos a ayudar... en ves de poner
"DUDA" mmm que falta de mm che en serio creo que ya te ayudaron pero para la proxima lo saves y lo saven ok
SAludos
|
|
|
En línea
|
|
|
|
|
|