in reply to Re: A regex question...
in thread A regex question...

Friedl has a variant of this; 'commafying a number'.
I did a paraphrase of artist's solution, influenced by Friedl, but with a twist for the <br> insert. And then a cmpthese.
nacka: s/(\d)(?=(\d{5})+(?!\d))/${1}-/g; substr($_, 17, 1, '<br>'); artist: s/((.){5})(?!$)/$1-/g; s/((.){17})\-/$1\<br\>/; thezip: s/(\d{5}) (\d{5}) (\d{5}) (\d{5}) (\d{5}) (\d{5}) /$1-$2-$3<br>$4-$5-$6/x; nacka/artist hybrid: s/(\d)(?=(\d{5})+(?!\d))/$1-/g; s/((.){17})\-/$1\<br\>/; artist/nacka hybrid: s/((.){5})(?!$)/$1-/g; substr($_, 17, 1, '<br>');
And the Benchmark:
Rate artist thezip artist/nacka nacka/artist + nacka artist 13175231/s -- -8% -9% -14% + -14% thezip 14347202/s 9% -- -1% -6% + -7% artist/nacka 14534884/s 10% 1% -- -5% + -6% nacka/artist 15313936/s 16% 7% 5% -- + -0% nacka 15384615/s 17% 7% 6% 0% + --
All of the above rate numbers are probably within the error margin.

I declare thezip's solution the most readable, and hence the winning solution.