my ( $adata, $bdata ); while ( ) { chomp; m/^A:\s*(\S)$/ and $adata = $1; m/^B:\s*(\S)$/ and $bdata = $1; m/^D:/ and do { print "A: $adata, B: $bdata\n"; last; }; }