Manipulação de arquivos
Publicado por Enzo de Brito Ferber (última atualização em 24/09/2010)
[ Hits: 8.067 ]
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]"; }
Contagem de linhas em Perl (= wc -l)
Conversão de textos UTF-8 para ISO8859-1
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela