in reply to how to search a pattern occured more than once in line

Hi,
I'd go with split:
#!/usr/bin/perl use strict; use warnings; my @Read = <DATA>; for (@Read){ next unless /^Number-/; chomp; $_ =~ s/Number-//g; my @numbers = split(/,/); print join("\n", @numbers),"\n"; } __DATA__ Number: Number-1999-1011 ---------------------------------------- Number: Number-1999-0696 ---------------------------------------- Number: Number-1999-0833,Number-2004-0786,Number-2004-0747,Number-2004-075,Num +ber-2004-0748,Number-2004-0809 ---------------------------------------- Number: Number-2000-1209 ----------------------------------------
output:
1999-1011 1999-0696 1999-0833 2004-0786 2004-0747 2004-075 2004-0748 2004-0809 2000-1209

Regards,
svenXY

update: I personally prefer the solution moritz++ offered above. It's also more regex-like - as was asked for in the OP.