Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Regular expression assistance

by kennethk (Monsignor)
on Dec 07, 2012 at 15:48 UTC ( #1007765=note: print w/ replies, xml ) Need Help??


in reply to Regular expression assistance

For me, the code print "yes\n" if $cdp =~ /0x01/; prints yes which means that your regular expression is valid. Can you show us a little more surrounding code? What do you expect to find in your array when you are done? Mine contains a 1, because that's what m// returns on a successful match.


#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.


Comment on Re: Regular expression assistance
Select or Download Code
Re^2: Regular expression assistance
by agentorange (Sexton) on Dec 07, 2012 at 15:56 UTC
    Thanks.

    Sorry didn't explain it fully but whilst I can pattern match ok I cannot see how to pattern match and pull out the 8th field in the line of which <space> is the separator char.
      Okay, much better. Assuming you want to do this in the midst of a script and not just piping one liners about, I would use more operations rather than be super sparse on characters. First, since you have a string that is internally-delimited by newlines, you can use . to match any character that is not a new line. This means you can actually grab your line using $cdp =~  m/(.*0x01.*)/, storing the line in $1. You could then split that on whitespace and grab the 8th field with (split /\s+/, $1)[7]. So collecting all your 8th field matches:
      my @switch; while ($cdp =~ m/(.*0x01.*)/g) { push @switch, (split /\s+/, $1)[7]; }
      If this is not your intent and the way forward is unclear, post explicit desired output so the goal is clear.

      #11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

        Ah perfect thank you.

        I hadn't appreciated I could reference the 8th element with 7 around split()

        Many thanks

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (21)
As of 2014-07-29 15:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (219 votes), past polls