in reply to Flipin good, or a total flop?
A common thing with flipflop is to want to exclude one or both endpoints.
To do this, you need to actually check the scalar value returned by the ..
operator; it will be a number beginning at 1 when the flip condition is
met and increasing once each time thereafter, with an "E0" appended when
the flop condition is met. (False is returned as "".)
Anyway, here are some examples. Better suggestions greatly encouraged.
$ cat data initial start interior end final $ # Include both endpoints $ perl -wlne'print if /start/../end/' data start interior end $ # Exclude starting point $ perl -wlne'print if ((/start/../end/) || 0) > 1' data interior end $ # Regex alternative for exclude starting point $ perl -wlne'print if (/start/../end/) =~ /^(?!1(?!\d))\d/' data interior end $ # Exclude ending point $ perl -wlne'print if (/start/../end/) =~ /^\d+$/' data start interior $ # Exclude both endpoints $ perl -wlne'print if (/start/../end/) =~ /^\d+(?<!^1)$/' data interior $ # or: $ perl -wlne'print if (/start/../end/) !~ /^1?$|E/' data interior
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Flipin good, or a total flop?
by bart (Canon) on Jan 25, 2006 at 22:25 UTC | |
by ysth (Canon) on Jan 26, 2006 at 03:25 UTC | |
by chibiryuu (Beadle) on Jan 27, 2006 at 21:53 UTC | |
Re^2: Flipin good, or a total flop?
by GrandFather (Saint) on Jan 25, 2006 at 11:19 UTC |
In Section
Tutorials