#!/usr/bin/env perl use strict; use warnings; my $closest; while () { print; if (/^MSG_ID_CELL_INFO_PRINT/) { $closest = $_; } if (/^MSG_ID_CELL_CAMP_REQ/) { print "\tClosest: $closest"; } } __DATA__ MSG_ID_CELL_INFO_PRINT sn=1 cellid=2; MSG_ID_CAMP_RSP sn=2 cellid=2; MSG_ID_CELL_INFO_PRINT sn=3 cellid=5; MSG_ID_CELL_INFO_PRINT sn=5 cellid=2; MSG_ID_CAMP_RSP sn=6 cellid=4; MSG_ID_CAMP_RSP sn=8 cellid=2; MSG_ID_CELL_INFO_PRINT sn=10 cellid=2; MSG_ID_CELL_INFO_PRINT sn=11 cellid=5; MSG_ID_CAMP_RSP sn=12 cellid=2; MSG_ID_CAMP_RSP sn=14 cellid=3; MSG_ID_CELL_CAMP_REQ sn=15 cellid=2; MSG_ID_CELL_INFO_PRINT sn=16 cellid=2; MSG_ID_CELL_INFO_PRINT sn=17 cellid=2; MSG_ID_CELL_INFO_PRINT sn=18 cellid=2; MSG_ID_CAMP_RSP sn=19 cellid=2; MSG_ID_CELL_INFO_PRINT sn=20 cellid=5; MSG_ID_CELL_INFO_PRINT sn=21 cellid=2; MSG_ID_CAMP_RSP sn=22 cellid=4; MSG_ID_CAMP_RSP sn=23 cellid=2; MSG_ID_CELL_INFO_PRINT sn=24 cellid=2; MSG_ID_CELL_CAMP_REQ sn=25 cellid=2;