From: junk5@... Date: 2006-03-01T21:03:37+09:00 Subject: Regex replacement problem---replace every n-th Hi all I have the string '1 20 3 400 5 60 7 800 9 0 ' and need to replace every n-th space in the string with another character. So if n=2 and the replacement character is '\n', then the above would become '1 20\n3 400\n5 60\n7 800\n9 0\n'. I'm sure it must be possible (easy, even) to do this with a regex substitution, but unfortunately I'm no regex ninja. So far I have: '1 20 3 400 5 60 7 800 9 0 '.sub(/(\d* \d* )/) {|s| s + "\n"} => "1 20 \n3 400 5 60 7 800 9 0 " But how do I get the substitution to be 'repeated'? Changing the regexp to /(\d* \d*)*/ does not do what I want. Also, I'm planning to run this on a large string, so I'd like it to be efficient if possible. Thanks in advance C