I cannot replicate your problem. When I download all the files and run the program, I get the "not defined" lines only for the non-defined entries:
4215-Femto_10 er ikke definert 4215-Femto_11 er ikke definert 4215-Femto_12 er ikke definert 4215-Femto_13 er ikke definert 4215-Femto_14 er ikke definert 4215-Femto_15 er ikke definert 4216-Femto_10 er ikke definert 4216-Femto_11 er ikke definert 4216-Femto_12 er ikke definert 4216-Femto_13 er ikke definert 4216-Femto_14 er ikke definert 4216-Femto_15 er ikke definert 4224-Femto_10 er ikke definert 4224-Femto_11 er ikke definert 4224-Femto_12 er ikke definert 4224-Femto_13 er ikke definert 4224-Femto_14 er ikke definert 4224-Femto_15 er ikke definert 4225-Femto_10 er ikke definert 4225-Femto_11 er ikke definert 4225-Femto_12 er ikke definert 4225-Femto_13 er ikke definert 4225-Femto_14 er ikke definert 4225-Femto_15 er ikke definert 4234-Femto_10 er ikke definert 4234-Femto_11 er ikke definert 4234-Femto_12 er ikke definert 4234-Femto_13 er ikke definert 4234-Femto_14 er ikke definert 4234-Femto_15 er ikke definert 4235-Femto_10 er ikke definert 4235-Femto_11 er ikke definert 4235-Femto_12 er ikke definert 4235-Femto_13 er ikke definert 4235-Femto_14 er ikke definert 4235-Femto_15 er ikke definert 4244-Femto_10 4244-Femto_11 4244-Femto_12 4244-Femto_13 4244-Femto_14 4244-Femto_15 4245-Femto_10 4245-Femto_11 4245-Femto_12 4245-Femto_13 4245-Femto_14 4245-Femto_15 4254-Femto_10 4254-Femto_11 4254-Femto_12 4254-Femto_13 4254-Femto_14 4254-Femto_15 4255-Femto_10 4255-Femto_11 4255-Femto_12 4255-Femto_13 4255-Femto_14 4255-Femto_15 4256-Femto_10 4256-Femto_11 4256-Femto_12 er ikke definert 4256-Femto_13 er ikke definert 4256-Femto_14 er ikke definert 4256-Femto_15 er ikke definert 4264-Femto_10 er ikke definert 4264-Femto_11 er ikke definert 4264-Femto_12 er ikke definert 4264-Femto_13 er ikke definert 4264-Femto_14 er ikke definert 4264-Femto_15 er ikke definert 4265-Femto_10 er ikke definert 4265-Femto_11 er ikke definert 4265-Femto_12 er ikke definert 4265-Femto_13 er ikke definert 4265-Femto_14 er ikke definert 4265-Femto_15 er ikke definert 4266-Femto_10 er ikke definert 4266-Femto_11 er ikke definert 4266-Femto_12 er ikke definert 4266-Femto_13 er ikke definert 4266-Femto_14 er ikke definert 4266-Femto_15 er ikke definert 4274-Femto_10 er ikke definert 4274-Femto_11 er ikke definert 4274-Femto_12 er ikke definert 4274-Femto_13 er ikke definert 4274-Femto_14 er ikke definert 4274-Femto_15 er ikke definert 4275-Femto_10 er ikke definert 4275-Femto_11 er ikke definert 4275-Femto_12 er ikke definert 4275-Femto_13 er ikke definert 4275-Femto_14 er ikke definert 4275-Femto_15 er ikke definert 4284-Femto_10 er ikke definert 4284-Femto_11 er ikke definert 4284-Femto_12 er ikke definert 4284-Femto_13 er ikke definert 4284-Femto_14 er ikke definert 4284-Femto_15 er ikke definert
You can see that for 4256, 10 and 11 are defined, while the rest is not, which is exactly the situation in your example.
Some tips on how to improve the code:
  1. do not omit or die after open.
  2. Do not reopen the file each time you want to add a line. Open it before the loop and close it afterwards.
  3. Do not repeat yourself. If you type almost the same code several times (or copy and paste it), you should think "loop" or "sub".
For example, I reduced your code to:
#!/usr/bin/perl use strict; use warnings; unlink '/tmp/kids.txt'; open my $INPUT, '/tmp/femto_check_edited2.txt' or die $!; open my $IN, '/tmp/utrancell_edited2.txt' or die $!; my @list_match; while(<$INPUT>){ chomp; push @list_match, $_; } close $INPUT; open my $KIDS, '>', '/tmp/kids.txt' or die $!; while (my $line = <$IN>) { chomp $line; for my $num (10 .. 15) { if (grep(/$line-Femto_$num/, @list_match) == 1) { print "$line-Femto_$num\n"; } else { print "$line-Femto_$num er ikke definert\n"; print {$KIDS} " $line-Femto_$num er ikke definert\n +"; } } } close $KIDS; close $IN;

In reply to Re: grep function does not recognize string by choroba
in thread grep function does not recognize string by korak

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.