Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^3: Detect STX and ETX hex in received string

by ColonelPanic (Friar)
on Nov 28, 2012 at 13:48 UTC ( #1006034=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Detect STX and ETX hex in received string
in thread Detect STX and ETX hex in received string

I interpreted single-character STX and ETX codes as being intrinsic to the problem. Maybe that is not so, however. Here is a multi-character solution:
use Modern::Perl; my $STX = 'foo'; my $ETX = 'bar'; my $re = qr{ $STX (?: (?<match>.*?) $ETX | (?:(?<match>.{80}))) }x; $_='foo12345678barfoo1234567890123456789012345678901234567'. '890123456789012345678901234567890123456789012345678901234567890bar'; say substr($+{match},0,80) while (/$re/g);

(I added a substr() to limit the matched string to 80 characters. It appears to me that it's not trivial to meet these requirements entirely within the regex...though I'm sure others will quickly prove me wrong!)



When's the last time you used duct tape on a duct? --Larry Wall

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (6)
As of 2016-08-26 08:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The best thing I ever won in a lottery was:















    Results (366 votes). Check out past polls.