Análisis de archivos de texto con Perl

Analizar archivos de texto es una de las razones por las que Perl es una excelente herramienta de minería de datos y secuencias de comandos.

Como verá a continuación, Perl puede usarse para reformatear básicamente un grupo de texto. Si mira hacia abajo en el primer fragmento de texto y luego en la última parte en la parte inferior de la página, puede ver que el código en el medio es lo que transforma el primer conjunto en el segundo.

Cómo analizar archivos de texto

Como ejemplo, construyamos un pequeño programa que abra un archivo de datos separado por tabulaciones y analice las columnas en algo que podamos usar.

Digamos, por ejemplo, que su jefe le entrega un archivo con una lista de nombres, correos electrónicos y números de teléfono, y quiere que lea el archivo y hacer algo con la información, como ponerlo en una base de datos o simplemente imprimirlo en un formato agradable reporte.

Las columnas del archivo están separadas con el carácter TAB y se verían así:

 Larry [email protected] 111-1111

 Curly [email protected] 222-2222

 Moe [email protected] 333-3333 

instagram viewer

Aquí está la lista completa con la que trabajaremos:

 #! / usr / bin / perl


 abierto (ARCHIVO, 'data.txt');

 mientras () {

 chomp

 ($ nombre, $ correo electrónico, $ teléfono) = dividir ("\ t");

 imprime "Nombre: $ nombre \ n";

 imprima "Correo electrónico: $ correo electrónico \ n";

 imprima "Teléfono: $ teléfono \ n";

 imprimir "\ n";

 }

 cerrar el archivo);

 salida;


Nota: Esto extrae algo de código del tutorial sobre Cómo leer y escribir archivos en Perl.

Lo que hace primero es abrir un archivo llamado data.txt (que debería residir en el mismo directorio que el script Perl). Luego, lee el archivo en la variable general $ _ línea por línea. En este caso, $ _ es implícito y no se usa realmente en el código.

Después de leer en una línea, cualquier espacio en blanco es mordisqueado fuera del final de la misma. Luego, la función de división se usa para romper la línea en el carácter de tabulación. En este caso, la pestaña está representada por el código \ t. A la izquierda del signo de división, verá que estoy asignando un grupo de tres variables diferentes. Estos representan uno para cada columna de la línea.

Finalmente, cada variable que se ha dividido de la línea del archivo se imprime por separado para que pueda ver cómo acceder a los datos de cada columna individualmente.

La salida del script debería verse así:

 Nombre: Larry

 Correo electrónico: [email protected]

 Teléfono: 111-1111


 Nombre: rizado

 Correo electrónico: [email protected]

 Teléfono: 222-2222


 Nombre: Moe

 Correo electrónico: [email protected]

 Teléfono: 333-3333


Aunque en este ejemplo solo estamos imprimiendo los datos, sería trivialmente fácil almacenar esa misma información analizada desde un archivo TSV o CSV, en una base de datos completa.

instagram story viewer