With the code and data you've shown, I cannot reproduce your problem:
#!perl -w use strict; my $key="5 10 14 16 17 20 25 26 38 1 42 4 +7 54"; my $substr = " 1 "; my @newarray= $key; foreach $key ( @newarray ) { if (index($key, $substr) != -1) { print "\nExist (substr)" }; if ($key =~ /\Q$substr\E/) { print "\nExist (RE)" }; if ($key =~ /\s+1\s+/) { print "\nExist (whitespace)" }; } __END__ >perl -w tmp.pl Exist (substr) Exist (RE) Exist (whitespace)
Maybe your data in $key really has tabs in it, but you are searching for blanks?
In reply to Re: Foreach loop
by Corion
in thread Foreach loop
by PetreAdi
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |