From: Stefano Crocco Date: 2007-06-28T21:11:56+09:00 Subject: Re: splitting a string 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