Alle gioved 28 giugno 2007, Lars Andren ha scritto:
> I've got a problem when trying to split a string after the thrid
> occurrence of a slash ('/'), I'm so used to java-thinking so I keep
> wanting to iterate through it and save the position of the third
> occurence and then cut the string at that index.
>
> This doesnt seem to be the Ruby-way, anyone got ideas of how I should do
> it?
> Grateful for any assistance,
> Lars

There may be better solutions, but this should work:

str.scan(/(?:[^\/]+(?:\/|$)){3}/)

This returns an array of strings obtained by splitting str after every 
third /. The last entry of the array contains the rest of the string:

'a/b/cd/efg/h/i'.scan(/(?:[^\/]+(?:\/|$)){3}/)
=> ["a/b/cd/", "efg/h/i"]

I hope this helps

Stefano