note
graff
If the behavior is as you describe with the typos fixed, then the problem may have to do with line-termination issues. Maybe line 4 of the file actually contains "testpoint\r\n" (i.e. a CRLF) instead of just "\n". If the perl script is running on the same OS that created the text file, then this ouqht to work:
<code>
while (<FILE>) {
chomp;
if ( $_ eq "testpoint" ) {
last;
}
}
</code>
But if the text file was made on one OS and the script is running under a different OS (and if it's not gauranteed that the file has not gone through a dos2unix or unix2dos filter), then you're better off using the regex approach. To get effectively the same behevior as a working "eq", just anchor the beginning and ending of the regex:
<code>
while (<>) {
if ( /^testpoint\s*$/ ) {
last;
}
}
</code>
369628
369628