in reply to regex problem

I just split it into the two thoughts you had, grabbing the text, and then the potential numbers in the line.
while ($line=<DATA>) { my @c=($line=~/^(\w+)\t/); my @d=$line =~ /(\d+)/gsm; foreach $e (@d) { print $c[0]," ", $e,"\n"; } } __DATA__ abcd 723-724 abcde 552-554-553 abcdef 756