while (<>) { (my $common, $_) = /^((?:[^\t]*\t){3})(.*)/; for ( split /\t/ ) { print("$common\t$_\n"); } }