Hi,
I have tried the following code for substring search, but it still only works for full strings:
open (GEN, "<general.txt") || die ("cannot open general.txt");
open (SEA, "<search.txt") || die ("cannot open search.txt");
undef $/;
$gen = <GEN>;
$sea = <SEA>;
@gen = split /\n/, $gen;
@sea = split /\n/, $sea;
for $a (@gen)
{
# no SUBSTRINGS: @result = grep/^\Q$a\E$/, @sea;
@result = grep/\Q$a\E/, @sea;
push (@final , @result);
}
print "Search string that matches against general data:\t@final";
//////////////////////////////////////////////////////////
here is the content of 'general.txt':
AT1G01450
AT1G12680
AT1G20650
AT1G30640
AT1G33770
AT1G49580
AT1G50140
//////////////////////////////////////////////////////////
here is the content of 'search.txt':
At1g28530
At1g28530
At1g55090
At2g14580
1450
//////////////////////////////////////////////////////////
the program should recognize '1450' as substring of the first line of 'general.txt' and give out the whole first line of 'general.txt', right?
Jurgen | [reply] [Watch: Dir/Any] [d/l] |
@result = grep/\Q$a\E/i, @sea;
Now it will work fine.
| [reply] [Watch: Dir/Any] [d/l] |
that's good code
shraddha rusia starletexports | [reply] [Watch: Dir/Any] |