use warnings; use strict; my @lines = ; my @splitLines = map {[/('....')..([-\d]*)\) -> ('?....'?)..([-\d]*)/]} @lines; print "$_->[0] ($_->[1]) -> $_->[2] ($_->[3])\n" for @splitLines;