local $/ = ''; # Paragraph mode. while () { my ($ar) = m|(\d+) kb/s|; my ($x, $y, $vr, $fps) = m|(\d+)x(\d+).*(?:(\d+) kb/s.*)?(\d+\.\d+) fps|; Dump [$ar, $x, $y, $vr, $fps]; } #### local $/ = ''; # Paragraph mode. while () { my ($ar ) = m|Audio.*?(\d+) kb/s|; my ($x, $y) = m|(?!0)(\d+)x(\d+)|; my ($vr ) = m|Video.*?(\d+) kb/s|; my ($fps ) = m|(\d+(?:\.\d+)?) fps|; Dump [$ar, $x, $y, $vr, $fps]; }