http://qs321.pair.com?node_id=1227151


in reply to Re: Grep Pattern
in thread Grep Pattern

What if the last element in the pattern is T, not F?

($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,

Replies are listed 'Best First'.
Re^3: Grep Pattern
by tybalt89 (Monsignor) on Dec 12, 2018 at 15:41 UTC

    Just invert the pattern and the test :)

    #!/usr/bin/perl -l # https://perlmonks.org/?node_id=1227147 use strict; use warnings; my $pattern = '011'; my @result = grep !($pattern =~ /./g && $&), 0..12; local $, = ','; print @result;

    Outputs:

    0,3,4,7,8,11,12
Re^3: Grep Pattern
by rsFalse (Chaplain) on Dec 15, 2018 at 20:43 UTC
    Here I reset 'pos' when match approaches the end of the pattern, allowing second regex always match:
    #!/usr/bin/perl # https://perlmonks.org/?node_id=1227147 use warnings; use strict; my $pattern = 'FTTF'; my @result = grep { $pattern =~ /(?!$)/g; $pattern =~ /./g; $& eq 'T' } 0 .. 12; print "@result\n";