Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: perl grep with regex

by choroba (Canon)
on Jun 30, 2014 at 12:36 UTC ( #1091707=note: print w/ replies, xml ) Need Help??


in reply to perl grep with regex

It works for me:

#!/usr/bin/perl use warnings; use strict; my @arr2 = qw( mcs scr tsz unh ); my @arr1 = qw( spec.srn.1234 sepc.mcs.1234 ); for my $strfile (@arr1) { my @arr3 = split(/[.\n]/, $strfile); if (grep (/^$arr3[1]$/, @arr2)) { print "Entered in IF Loop\n"; } else { print "Entered in ELSE Loop\n"; } } __END__ Output: Entered in ELSE Loop Entered in IF Loop

Are you sure your input contains what you think? Try adding the information to the output:

if (grep (/^$arr3[1]$/, @arr2)) { print "Entered in IF Loop: /^$arr3[1]\$/ found in (@arr2)\n"; } else { print "Entered in ELSE Loop: /^$arr3[1]\$/ not found in (@arr2 +)\n"; }

Also note that I used $arr3[1] instead of @arr3[1]. warnings told me to do so.

لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ


Comment on Re: perl grep with regex
Select or Download Code
Replies are listed 'Best First'.
Re^2: perl grep with regex
by swissknife (Acolyte) on Jun 30, 2014 at 13:33 UTC

    Thank you for your response. Does it make any difference when i read arr2 from a file? (in my actual code i get this array by reading a file). i tried as you suggested and got below output.

    Entered in else loop: /^mcs$/ found in (scr mcs tsz unh )
      There's probably some whitespace at the end of the lines in the file. Remove it:
      s/\s+$// for @arr2;
      لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ

        actually the space was in the beginning of line. i removed it and now it is working correctly.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1091707]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (11)
As of 2015-07-08 04:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (94 votes), past polls