Forum: Ruby Inserting a counter into a .each loop

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Brian B. (Guest)
on 2009-05-24 22:42
I've got a loop that iterates through a string like so:

string.each_byte do |f|

  ...do something with f.chr

end

I would like to use a counter variable in this loop. I know I can add
'.with_index' but I need more control than that. I need a counter
variable in
this loop with state I can set when some condition is met and that will
persist through each iteration.
Does anyone know if this is possible? Thank you.
Mk 2. (Guest)
on 2009-05-24 22:56
string = "hello world"
x = 0
string.each_byte do |c|
        x+=1
end
puts x
Tim H. (Guest)
on 2009-05-24 23:04
(Received via mailing list)
Brian B. wrote:
> variable in
> this loop with state I can set when some condition is met and that will
> persist through each iteration.
> Does anyone know if this is possible? Thank you.

What's wrong with

x = 0
string.each_byte do |f|
    x += 1
end
Mk 2. (Guest)
on 2009-05-25 00:47
Tim H. wrote:

> What's wrong with
>
> x = 0
> string.each_byte do |f|
>     x += 1
> end

Clearly my method is better here Tim.
Tim H. (Guest)
on 2009-05-25 02:34
(Received via mailing list)
Mk 27 wrote:
>
Maybe somebody should do a benchmark. :-)
This topic is locked and can not be replied to.