Tecnología

Inicio

Cómo extraer un IP de texto con VBS

Visual Basic Script sobresale en la automatización de tareas simples, pero cuando llega el momento de realizar la manipulación de texto complejo, tiene que sacar la artillería pesada. El lenguaje de expresiones regulares para buscar y manipular texto de formas sofisticadas ha existido durante décadas y ha sido parte de la secuencia de comandos de Visual Basic desde finales de los 90. El uso de este idioma, se puede recorrer uno a uno los documentos cazando y difíciles de encontrar información, como las direcciones IP válidas.

Instrucciones

1 Abrir Bloc de notas (o cualquier otro editor de texto plano) y pegue el texto siguiente:

"Esto es un texto que contiene las direcciones IP, como 194.23.14.34 y 238.12.43.54. También contiene una dirección IP falsa, tales como 493.234.534.234, que no será detectada, ya que no representan reales posibles direcciones IP."

Esto se utiliza como el texto de prueba para la secuencia de comandos. Si funciona correctamente, el guión debe recoger las dos primeras direcciones IP pero no la última. Las direcciones IP pueden contener números entre 0 y 255. Sólo Desde los últimos usos "493" y "534", que no es válido y no debe ser detectado por su guión.

2 Guárdelo con el nombre de "textWithIPs.txt."

3 Pulse la tecla "Ctrl-n" para abrir un nuevo documento en el Bloc de notas.

4 Escriba lo siguiente:

dim FSO, archivo de texto, texto, IPList, re

const ForReading = 1

conjunto re = New RegExp

re.Global = True

re.Pattern = "\ b (:( ?: 25 [0-5] |? 2 [0-4] [0-9] |?? [01] [0-9] [0-9]).) {3} (25 ?: [0-5] | 2 [0-4] [0-9] |?? [01] [0-9] [0-9]) \ b "

establecer FSO = CreateObject ( "Scripting.FileSystemObject")

establecer TEXTFILE = FSO.OpenTextFile ( "c: \ textWithIPs.txt", ForReading)

text = ""

hacer hasta textFile.atEndOfStream

texto = texto y textFile.readLine

lazo

textFile.close

establecer IPList = re.Execute (texto)

para cada IP en IPList

resultado MsgBox

Siguiente

Guárdelo con el nombre de "ipExtractor.vbs." Asegúrese de que la extensión es "vbs" y no "txt".

5 Haga clic en "Inicio" y "Mi PC". Haga doble clic en la carpeta "C: \" unidad y haga doble clic en el archivo "ipExtractor.vbs." Después de un breve momento, debería aparecer una serie de cuadros de mensaje que contiene todas las direcciones IP en el archivo de texto, pero no las direcciones no válidas.

Consejos y advertencias

  • El corazón de su guión es el guión expresión "re.Pattern" regular. Este script busca el único texto que se ajusta al patrón de una dirección IP válida. Es por eso que las direcciones IP no válidas incluidas en el texto no se recuperan. Las expresiones regulares son un tema complejo en su propio derecho, pero se puede leer más en la página web RegularExpression en la sección Recursos.