Resultados 1 a 4 de 4
  1. #1
    Hacker Avatar de acpguedes
    Data de Ingresso
    Sep 2011
    Localização
    #!/usr/bin/env perl
    Posts
    955

    [Duvida] Obtendo dados de um arquivo

    Boa noite Monges Invaders,

    Gostaria de tentar sanar uma duvida com vocês

    Digamos que eu tenha um arquivo chamado "dados.txt" no seguinte modelo
    Código PHP:
    acpguedes
    21
    Invaders
    Perl
    CPAN 
    eu posso acessar qualquer dado desse arquivo por um array da seguinte forma

    Código PHP:
    #!/usr/bin/perl

    use common::sense;

    open FH'dados.txt' or die;
    my @lista = <FH>;

    print 
    "digite um numero\n";
    my $n = <STDIN>;

    print 
    $lista[$n], "\n"
    Logo se eu digitar 2 saira:

    Código PHP:
    21 
    Agora se a lista estiver no seguinte formato

    Código PHP:
    acpguedes 21 Invaders Perl CPAN 
    o mesmo script postado acima não terá valor nenhum!

    O que eu gostaria de perguntar é como pegar algum valor desse arquivo,
    por exemplo, se eu digitar "2", imprimir na tela "21".
    Pois com esse modelo de arquivo ou imprime toda a linha ou não imprime nada!

    Desde já, grato!
    So respondo se a consiencia perguntar!!!
    Não Respondo MP's de perguntas, as faça em um tópico!

    Perl User, Bioinformatcs Programmer!

  2. #2
    Quase toda linguagem que conheço tem uma função para dividir strings.
    VB split, php explode, delphi extractstrings, delphi xe splitstring etc...

    olhei na documentação do perl e achei o metodo split.
    Porem não sei se é a melhor solução.

    Código PHP:
    #!/usr/bin/perl

    use warnings;use strict;
    my $data "acpguedes 21 Invaders Perl CPAN";my @list = split(/ /, $data);print $list[3]; 
    É melhor não dizer nada e pensarem que é bobo, do que abrir a boca e acabar com as duvidas.

  3. #3
    White Hat Administrador Avatar de fvox
    Data de Ingresso
    Sep 2005
    Localização
    São Paulo - SP
    Posts
    4.428
    Hi.

    Faz o split através de expressão regular.
    Por exemplo, se você mandar dividir por \s+ vai funcionar tanto para múltiplos espaços como para quebra de linha.

    []'s
    Acha que está caindo na insanidade? Mergulhe!

    Twitter | Blog | Facebook | Github

  4. #4
    Hacker Avatar de acpguedes
    Data de Ingresso
    Sep 2011
    Localização
    #!/usr/bin/env perl
    Posts
    955
    valeu galera, eu não pensei nisso...
    valeu mesmo!
    So respondo se a consiencia perguntar!!!
    Não Respondo MP's de perguntas, as faça em um tópico!

    Perl User, Bioinformatcs Programmer!

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •