in reply to text to array

What is wrong with the answers you got to Modifying text file?

Replies are listed 'Best First'.
Re^2: text to array
by torres09 (Acolyte) on Jun 06, 2013 at 07:53 UTC
    #!/usr/local/bin/perl open (MYFILE, 'test1234.txt'); while (<MYFILE>) { chomp; @myNames= split(/\t/, $_); $i=0; print "@myNames \n"; while($i<=$#myNames) { $names12[$i]=@myNames[$i].','; $i++; } } print "@names12 \n"; exit;

    this is what i did , so if you can point out the mistakes , it will help

      $names12[$i]=@myNames[$i].','; #should be $names12[$i]=$myNames[$i].',';

      Actually there's lots more issues in your program than this one. Its really a case of if you want to solve this properly, don't start from where you are at present! :-)

      Why are you splitting on tabs when you indicated you wanted to split out words before? The answers given in your previous question do things much more efficiently than your code, so what is wrong with them?

      Please give an example of the text you want to split and what you want it to look like at the end

      Something roughly like this will put all your data in @names12:

      # execute as perl -n program.pl < myTextFile #!/usr/bin/perl # get the words from current text block and push into array.... while (/(\w+)/g) { push @names12, $1; } END { # your array contains words, now add comma to printout print join(',', @names12); }
      If you spot any bugs in my solutions, it's because I've deliberately left them in as an exercise for the reader! :-)
      If your words are tab separated, the following should work
      #!/usr/local/bin/perl use strict; use warnings; open (my $wordfile, '<', 'test1234.txt')|| die "Could not open test123 +4.txt, $!"; while (<$wordfile>){ print join ',', split(/\t/, $_); exit; }
      print "Good ",qw(night morning afternoon evening)[(localtime)[2]/6]," fellow monks."

        it does not work , stops after first line of document

A reply falls below the community's threshold of quality. You may see it by logging in.