in reply to parsing data from file

I think you need to use "chomp" on the variables that are input from the user:
# ... prompt and read user input ... then: chomp $l, $t, $w;
If you don't do that, the final 'newline' character(s) that were part of the user's input are retained at the end of each string, and these will never match the file data you are comparing it to. (Notice that the last element of data read from the file, "$striping", will also contain the final "newline" characters that are found at the end of each line in the file, because you are not using chomp on the file input either.

Also, maybe you need to be clear about whether the user is supposed to provide just numbers for those three input values, or whether they are supposed to be alphanumeric strings like "LOT1", "W2" and "tester3". As you've posted it, if they just put in numbers (as instructed), you are not adding the alphabetic parts that will allow them to match the fields in the file data.

Another alternative (which I would personally consider to be a better idea), is to have the user provide his three input values on the command line, following the name of the script. The script then fetches the values from @ARGV -- and note that values in @ARGV don't have newline characters at the end, so you don't need to chomp them:

my $Usage = "Usage: $0 LOT# W# tester#\n"; die $Usage unless ( @ARGV==3 and join(" ",@ARGV) =~ /LOT\d+ W\d+ teste +r\d+/ ); my ( $l, $w, $t ) = @ARGV; print "Command line args were:\n $l\n $w\n $t\n"; my $sdtfile = "C:\\bzip\\sdt.log"; if (open (MAPFILE, "< $sdtfile")) { my @lines = <MAPFILE>; chomp @lines; my @fields = qw/time lot waf ts sstep machine product plnfile stri +ping/; my %row; foreach $line (@lines) { @row{@fields} = split /,/, $line; if ($l eq $row{lot} && $w eq $row{waf}) { # do something... } } }
BTW, it looks to me like the readmore tags are working. When I view the post directly, I see your code with a shaded background, whereas when it appears in the "Seekers of Perl Wisdom" index page (among other posts in this section) the code is hidden.