sub parse_lab_test { @segs = split('\r', $b); # \r is the record terminator foreach $seg (@segs) { $segtype = substr($seg, 0, 3); if ($segtype eq "MSH") { msh_fields($seg); } elsif ($segtype eq "PID") { pid_fields($seg); } elsif ($segtype eq "PV1") { pv1_fields($seg); ... etc ... } else { &segment_error; } } }