Manipulação de arquivos
Publicado por Enzo de Brito Ferber (última atualização em 24/09/2010)
[ Hits: 8.237 ]
Homepage: http://www.maximasonorizacao.com.br
Bom, resolvi aprender Perl e comecei a brincar, e achei um tutorial que tinha o seguinte exercício.
Faça um programa que leia um arquivo de texto e imprima as linhas (com sua numeração no arquivo) que contenham:
- a letra x
- a palavra 'the' (case-sensitive)
- a palavra 'the' (no-case-sensitive) - ou seja, desconsiderar se as letras são maiúsculas ou minúsculas.
#!/usr/bin/perl
#
# Regular Expressions
#
# Program that counts only the line with:
# - the letter x
# - the string the (case-sensitive)
# - the string the (non-case-sensitive)
#
# Exercice for Perl tutorial found at:
# http://www.comp.leeds.ac.uk/Perl/matching.html
#
# Enzo Ferber : <enzo@veloxmail.com.br>
# sep 2010
$file = "electricity.txt";
open ( FILE, $file );
@lines = <FILE>;
$i = 1;
foreach $_ ( @lines )
{
if ( /x/ )
{
push ( @x, $i );
}
elsif ( /the/ )
{
push ( @thecs, $i );
}
# can't be elsif because won't include the(case sensitive)
if ( /the/i )
{
push ( @thencs, $i );
}
# line numbers counter
++$i;
}
# Printing
print "Letter x\n\n";
foreach $xx ( @x )
{
print "$xx $lines[$xx - 1]";
}
print "\nthe case-sensitive\n\n";
foreach $tcs ( @thecs )
{
print "$tcs $lines[$tcs - 1]";
}
print "\nthe non-case-sensitive\n\n";
foreach $tncs ( @thencs )
{
print "$tncs $lines[$tncs - 1]";
}
Manipulação de Arquivos Orientada a Objetos
Listar arquivos de um diretório.
FTP – Script para adicionar e remover usuários via WEB
script para localizar conteudo de arquivo
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
Como personalizar o lxde? [RESOLVIDO] (5)
Flatpaks não funcionam após atualizar pelo Gerenciador de Atualizações... (3)
Erro no suitable vídeo mode (15)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (2)









