[Cascavel-pm] busca em arquivo

Diego Mendes Teixeira diegom em lcc.ufmg.br
Segunda Outubro 23 11:40:43 PDT 2006


Estudo no UNI-BH (Centro Universitario de Belo Horizonte)... mas faço
estágio na UFMG e PowerLogic....

t+
Diego


.============================================.
   Diego Mendes Teixeira   -  diegom em lcc.ufmg.br
   Setor de Desenvolvimento  -  UFMG - LCC/CENAPAD
   Cel: +55(31)8842-9951 - Tel(trab): +55(31)34994910
'============================================'


                                                                           
             Lorn                                                          
             <lorn.br em gmail.co                                             
             m>                                                       Para 
             Enviado Por:              "Cascavel Perl Mongers"             
             cascavel-pm-bounc         <cascavel-pm em pm.org>                
             es+diegom=lcc.ufm                                          cc 
             g.br em pm.org                                                   
                                                                   Assunto 
                                       Re: [Cascavel-pm] busca em arquivo  
             20/10/2006 18:27                                              
                                                                           
                                                                           
             Favor responder a                                             
               Cascavel Perl                                               
                  Mongers                                                  
             <cascavel-pm em pm.o                                             
                    rg>                                                    
                                                                           
                                                                           




http://search.cpan.org/~jgoldberg/Text-Levenshtein-0.05/Levenshtein.pm
Esse modulo é um bom começo para buscas aproximadas, boa sorte
PS: Que faculdade é a sua?

On 10/20/06, Diego Mendes Teixeira <diegom em lcc.ufmg.br> wrote:


      EU JA FIZ O DE EXPRESSAO REGULAR QUE ESTA FUNCIONANDO SIM, FALTA NA
      BUSCA APROXIMADA O PROGRAMA NAO FAZER DISTINCAO ENTRE LETRAS
      MAIUSCULAS E MINUSCULAS. JA NO OUTRO PROGRAMA EU NAO SEI COMO
      ADICIONAR O TEXTO EM UM ARRAY E FAZER A BUSCA PELA PALAVRA.... AINDA
      NAO COMECEI....

      ==================================================================================================================================


      #!/usr/local/bin/perl

      #Programa de busca de casamento de padrao em perl com uso de
      expressoes regulares

      print "\nEscolha a opcão de busca e a palavra a ser buscada(passagem
      por argumento)\n\n";
      print "0 - Busca exata\n";
      print "1 - Busca aproximada\n\n";
      print "Exemplo: perl [programa] [tipo de busca] [palavra]\n\n";

      foreach $argument(@ARGV){ #carrega um argumento por vez para a
      variavel $argument
      push(@arguments,$argument); #adiciona o argumento ao array @arguments
      }

      if ($arguments[0] == '0'){ #Testa o primeiro argumento, se '0' entao
      busca exata!

      $palavra = $arguments[1];#a palavra é recuperada o array
      $aux = 0;#linha da ocorrencia da palavra
      $aux2 = 0; #se ocorrencia da palavra
      open( ARQUIVO, "texto.txt" ) || die "Erro ao abrir arquivo
      texto.txt\n"; #abre o arquivo que sera lido
      while ( $linha = <ARQUIVO> ) { #laço que carrega as linhas do arquivo
      ++$aux;#variavel que guarda a linha que esta sendo lida
      if ( $linha =~ /\b$palavra\b/ ) { #testa se a palavra esta na linha
      referenciada
      print "Linha:".$aux."\n";#imprime a linha caso tenha encontrado a
      palavra
      $aux2 = 1; #seta aux2 indicando que pelo menos uma ocorrencia da
      palavra foi encontrada
      }
      }
      close ( ARQUIVO ); #fecha o arquivo

      if ($aux2 == 0){ #testa se aux2 foi setado
      print "Não foi encontrado nenhuma ocorrência da palavra:
      ".$palavra."\n\n";
      }
      }
      else { #Busca aproximada!

      $palavra = $arguments[1];#a palavra é recuperada o array
      $aux = 0;#linha da ocorrencia da palavra
      $aux2 = 0; #se ocorrencia da palavra
      open( ARQUIVO, "texto.txt" ) || die "Erro ao abrir arquivo
      texto.txt\n"; #abre o arquivo que sera lido
      while ( $linha = <ARQUIVO> ) { #laço que carrega as linhas do arquivo
      ++$aux;#variavel que guarda a linha que esta sendo lida
      if (( $linha =~ /$palavra/ ) || ($linhaMaus =~/$palavra/) ||
      ($linhaMin =~/$palavra/)){ #testa se a palavra esta na linha
      referenciada
      print "Linha:".$aux."\n";#imprime a linha caso tenha encontrado a
      palavra
      $aux2 = 1; #seta aux2 indicando que pelo menos uma ocorrencia da
      palavra foi encontrada
      }
      }
      close ( ARQUIVO ); #fecha o arquivo

      if ($aux2 == 0){ #testa se aux2 foi setado
      print "Não foi encontrado nenhuma ocorrência da palavra:
      ".$palavra."\n\n";
      }

      }



      ==================================================================================================================================


      VLW, AGUARDO RETORNO.........

      (Consulte o arquivo anexado: erPerl.pl)

      .============================================.
      Diego Mendes Teixeira - diegom em lcc.ufmg.br
      Setor de Desenvolvimento - UFMG - LCC/CENAPAD
      Cel: +55(31)8842-9951 - Tel(trab): +55(31)34994910
      '============================================'
      Inativo ocultar detalhes de"Gabriel Vieira"
      <gabriel.vieira em gmail.com>"Gabriel Vieira" < gabriel.vieira em gmail.com
      >

                                                                           
                         "Gabriel Vieira" <                                
                         gabriel.vieira em gma                                
                         il.com>                                           
                         Enviado Por:                                      
                         cascavel-pm-bounce                           Para 
                         s+diegom=                                         
                         lcc.ufmg.br em pm.org          "Cascavel Perl        
                                                     Mongers" <            
                                                     cascavel-pm em pm.org>   
                         20/10/2006 14:34                                  
                                                                        cc 
                                                                           
              Favor responder a                                            
  Cascavel Perl Mongers <cascavel-pm em pm.org                        Assunto 
                      >                                                    
                                                     Re: [Cascavel-pm]     
                                                     busca em arquivo      
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           





      Você já começou?
      Mostra o que já fez que lhe ajudaremos. Não podemos fazer todo um
      trabalho por você né. :)

      No aguardo,

      Gabriel Vieira

      On 10/20/06, Diego Mendes Teixeira < diegom em lcc.ufmg.br> wrote:
                  Boa Tarde,

                  Tenho que fazer um trabalho em perl para a máteria de
                  linguagens de programação.

                  O objetivo deste trabalho é projetar e implementar um
                  sistema de programas para recuperar
                  ocorrências de padrões em arquivos constituídos de
                  documentos, utilizando algoritmos lineares
                  de busca seqüencial.

                  O professor pede que eu desenvolva 2 algoritmos:

                  1 - BMH em Perl com arranjo dinâmico em heap
                  2 - Casamento em Perl com uso de expressões regulares

                  O sistema recebe do usuário uma cadeia de caracteres, se
                  a busca é exata (k=0) ou aproximada
                  (0 < k < m), e imprime todas as ocorrências do padrão no
                  texto.

                  Alguem poderia me dar uma ajuda???????

                  Vlw


                  .============================================.
                  Diego Mendes Teixeira - diegom em lcc.ufmg.br
                  Setor de Desenvolvimento - UFMG - LCC/CENAPAD
                  Cel: +55(31)8842-9951 - Tel(trab): +55(31)34994910
                  '============================================'



                  _______________________________________________
                  Cascavel-pm mailing list
                  Cascavel-pm em pm.org
                  http://mail.pm.org/mailman/listinfo/cascavel-pm
                  _______________________________________________
                  Cascavel-pm mailing list
                  Cascavel-pm em pm.org
                  http://mail.pm.org/mailman/listinfo/cascavel-pm



      _______________________________________________
      Cascavel-pm mailing list
      Cascavel-pm em pm.org
      http://mail.pm.org/mailman/listinfo/cascavel-pm





--
Lorn
- Slackware Linux
www.slackwarezine.com.br
- http://lornlab.org _______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20061023/824398c0/attachment-0001.html 
-------------- Próxima Parte ----------
Um anexo não texto foi limpo...
Nome  : graycol.gif
Tipo  : image/gif
Tam   : 105 bytes
Descr.: não disponível
Url   : http://mail.pm.org/pipermail/cascavel-pm/attachments/20061023/824398c0/attachment-0003.gif 
-------------- Próxima Parte ----------
Um anexo não texto foi limpo...
Nome  : pic00491.gif
Tipo  : image/gif
Tam   : 1255 bytes
Descr.: não disponível
Url   : http://mail.pm.org/pipermail/cascavel-pm/attachments/20061023/824398c0/attachment-0004.gif 
-------------- Próxima Parte ----------
Um anexo não texto foi limpo...
Nome  : ecblank.gif
Tipo  : image/gif
Tam   : 45 bytes
Descr.: não disponível
Url   : http://mail.pm.org/pipermail/cascavel-pm/attachments/20061023/824398c0/attachment-0005.gif 


Mais detalhes sobre a lista de discussão Cascavel-pm