For the life of me, i can't figure out a ruby equivalent to perl's /g basically, i want to do the following while htmlSource=~m/<table>(.*?)<\table>/g do tableSource=$1 tableSource=~m/Index (\d+)/ indexNumber=$1 while tableSource=~m/<tr>(.*?)<\/tr>/g do tableRowSource=$1 doSomethingWith(tableRowSource, indexNumber) end#while tableSource end#while htmlSource I will actually need to pull multiple vars, not just a single one, from the regex I will need to do the outer loop an unknown amount of times per document (0-20) and i will need to loop the inner an unknown amount of times (0-29) Thread safe would be a plus. any suggestions?