I am not sure I understand this posting of yours. Are you talking to
the OP or to me? If you are talking to me, foreach is what I used in
the example above.
robert
···
2007/11/23, Dejan Dimic <dejan.dimic@gmail.com>:
On Nov 23, 1:08 pm, Robert Klemme <shortcut...@googlemail.com> wrote:
> 2007/11/23, Lee Jarvis <jarv...@gmail.com>:
>
> > Peter Loftus wrote:
> > > Im pretty sure this will work but is there any cleaner way to do it?
>
> > File.readlines('file.txt.).each do |line|
> > puts 'got it!' if line =~ /regexp/
> > end
>
> This is more efficient - no need to load the whole file into mem to
> find a single line:
>
> File.foreach "file.txt" do |line|
> if /rx/ =~ line
> puts "found it"
> break
> end
> end
>
> Cheers
>
> robert
>
> --
> use.inject do |as, often| as.you_can - without end
Check out
ri IO:foreach
ri IO#each
and use what more suits your needs.
--
use.inject do |as, often| as.you_can - without end
> This is more efficient - no need to load the whole file into mem to
> find a single line:
>
> File.foreach "file.txt" do |line|
> if /rx/ =~ line
> puts "found it"
> break
> end
> end
>
> Cheers
>
> robert
Ahh, good point, touche my good man.
--
use.inject do |as, often| as.you_can - without end
On Nov 24, 8:58 am, Robert Klemme <shortcut...@googlemail.com> wrote:
> > end
File.to_enum(:foreach,"file.txt").grep(/rx/) {|li| puts li; break}
Kind regards
robert
--
use.inject do |as, often| as.you_can - without end
That's Ruby beauty, express yourself in a way that suits you the most
and still we all can understand your dialect and enjoy.
Speak for yourself. I found that solution particularly distasteful. It
turned a simple, easy to read solution, into a convoluted one-liner
mess. And on my system the enumerator solution is 50% slower. But,
that seems to be the Ruby Way, so at some point I guess I'll have to
drink the koolaid and declare how beautiful solutions like that are.
--
Posted via http://www.ruby-forum.com/\.