Extracción de Información con Expresiones Regulares en Perl
Clase 22 de 29 • Curso de Expresiones Regulares
Contenido del curso
- 5

Uso de Expresiones Regulares para Buscar y Reemplazar Texto
09:55 - 6

Búsqueda Avanzada con Expresiones Regulares: Clases y Caracteres
13:55 - 7

Operadores en Expresiones Regulares: Asterisco, Más e Interrogación
17:42 - 8

Contadores en Expresiones Regulares: Uso y Aplicaciones Prácticas
14:03 - 9

Expresiones Regulares: Uso de Lazy Matching en CSVs
07:47 - 10

Negación de Clases y Construcción de Expresiones Regulares
06:49 - 11

Expresiones Regulares para Filtrar Números Telefónicos
01:06 - 12

Expresiones Regulares para Procesar Archivos CSV Masivos
08:00
- 13

Expresiones Regulares para Análisis de Logs UNIX
07:22 - 14

Expresiones Regulares para Validar URLs y Dominios Web
08:07 - 15

Creación de Expresiones Regulares para Validación de Teléfonos
12:30 - 16

Validación de Correos Electrónicos con Expresiones Regulares
13:42 - 17

Expresiones Regulares para Coordenadas Geográficas
17:16 - 18

Validación de Nombres Propios y Apellidos en Regex
03:21
- 20

Extracción de Variables en URLs con Expresiones Regulares
10:49 - 21

Uso de Expresiones Regulares en Perl, PHP, Python y JavaScript
03:29 - 22

Extracción de Información con Expresiones Regulares en Perl
23:35 - 23

Expresiones Regulares en PHP: Filtrado de Datos CSV
09:30 - 24

Análisis de Datos de Partidos de Fútbol con Expresiones Regulares
16:26 - 25

Expresiones Regulares en Python para Análisis de Datos
21:58 - 26

Lectura de Archivos en Java con BufferReader
07:59 - 27

Expresiones Regulares en Java: Búsqueda y Filtrado de Datos
08:48 - 28

Validación de Emails con JavaScript y Expresiones Regulares
17:35 - 29

Expresiones Regulares en Línea de Comandos UNIX y Windows
08:18
¿Cómo utilizar Perl de manera funcional?
El lenguaje de programación Perl, aunque considerado antiguo y complejo, todavía sigue usándose ampliamente. Sin embargo, en este contexto, nos enfocaremos en su uso funcional y sencillo. A través de pasos claros y precisos, aprenderás a emplear Perl sin necesidad de sumergirte profundamente en su programación. Con este enfoque, podrás utilizar Perl para tareas específicas, como trabajar con expresiones regulares, de forma eficaz y directa.
¿Cómo iniciar un script en Perl?
Para iniciar un script en Perl, se debe comenzar con una línea específica que indica qué intérprete se debe usar. Además, es recomendable utilizar algunas directrices como el modo estricto y que los 'warnings' o advertencias se muestren en pantalla, en lugar de ser ignoradas. Esto es crucial para depurar y ajustar el código conforme sea necesario.
#!/usr/bin/perl
use strict;
use warnings;
Puedes incluir una variable para medir el tiempo de ejecución, especialmente útil si deseas comparar cómo diferentes lenguajes ejecutan la misma tarea.
my $start_time = time;
¿Cómo trabajar con archivos en Perl?
Abrir y leer archivos en Perl es bastante sencillo. Perl te permite iterar fácilmente sobre cada línea de un archivo utilizando su variable predeterminada. A continuación, verás cómo abrir un archivo y leer cada una de sus líneas:
open(my $fh, '<', 'results.csv') or die "No se pudo abrir el archivo";
while (my $line = <$fh>) {
print $line;
}
close($fh);
Para asegurarnos de que las líneas no contengan caracteres indeseados, utilizamos la función chomp.
¿Cómo crear y utilizar expresiones regulares en Perl?
Las expresiones regulares en Perl se encierran entre slash (/). Al utilizar la función m//, podemos capturar patrones específicos dentro de las cadenas de texto. Te mostramos cómo buscar patrones en un csv:
if ($line =~ m/^(\d{4})-02-/) {
print "Partido en febrero: $line\n";
}
En este ejemplo, buscamos todos los partidos registrados en febrero, identificando las cadenas que empiezan con un año seguido del mes "02".
¿Cómo podemos contar coincidencias y no coincidencias en Perl?
Para contar las coincidencias (matches) y no coincidencias (no matches), podemos declarar variables contadoras e incrementar sus valores dependiendo de las condiciones del if y else.
my $match = 0;
my $no_match = 0;
if ($line =~ m/^(\d{4})-02-/) {
$match++;
} else {
$no_match++;
}
printf "Se encontraron %d coincidencias y %d no coincidencias\n", $match, $no_match;
¿Cómo extraer y formatear datos específicos utilizando Perl?
Una vez comprobadas las coincidencias, podemos extraer y formatear los resultados utilizando printf para obtener un formato más legible y específico:
if ($line =~ m/^(\d{4})-(\d{2})-(\d{2}),([^,]*),([^,]*),(\d+),(\d+),(.+)/) {
my ($year, $home_team, $away_team, $home_score, $away_score) = ($1, $4, $5, $6, $7);
if ($away_score > $home_score) {
printf "%s ganó a %s por %d a %d en %s\n", $away_team, $home_team, $away_score, $home_score, $year;
}
}
¿Cómo medir el tiempo de ejecución en Perl?
Finalmente, podemos calcular y mostrar el tiempo necesario para ejecutar el script. Esta técnica nos ayudará a evaluar la eficiencia de nuestro código.
my $end_time = time;
printf "El script tardó %d segundos en ejecutarse\n", $end_time - $start_time;
Al seguir este procedimiento, puedes realizar tareas complejas de procesamiento de datos de manera eficiente y rápida utilizando Perl. Aunque a veces Perl pueda parecer críptico, la práctica y un enfoque paso a paso pueden ayudarte a dominar este poderoso lenguaje de scripting. Te animamos a seguir explorando las posibilidades que ofrece Perl y otros lenguajes en el mundo de la programación.