in reply to Re: regex (between two words)
in thread regex (between two words)

hmm was more complicated than I thought (at least in the debugger)

DB<173> p $_ = join " ", map { "$_" x 3 } qw/. a b C a d C e C ./ ... aaa bbb CCC aaa ddd CCC eee CCC ... DB<174> ; /(aaa.*?CCC)/gc; $last= $1 # $1 reset +in next debugger line DB<175> @res = map { $last .= $_ } ("", /\G(.*?CCC)/g) DB<176> x @res 0 'aaa bbb CCC' 1 'aaa bbb CCC aaa ddd CCC' 2 'aaa bbb CCC aaa ddd CCC eee CCC' DB<177>

I think I'd rather prefer splitting the longest match ...

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery FootballPerl is like chess, only without the dice

Replies are listed 'Best First'.
Re^3: regex (between two words)
by LanX (Saint) on Feb 09, 2020 at 22:13 UTC
    > I think I'd rather prefer splitting the longest match ...

    DB<205> p $_ = join " ", map { "$_" x 3 } qw/. a b C a d C e C ./ ... aaa bbb CCC aaa ddd CCC eee CCC ... DB<206> p ($long) = /(aaa.*CCC)/ aaa bbb CCC aaa ddd CCC eee CCC DB<207> $last = "" DB<208> x map {$last .= $_ } split /(?<=CCC)/, $long 0 'aaa bbb CCC' 1 'aaa bbb CCC aaa ddd CCC' 2 'aaa bbb CCC aaa ddd CCC eee CCC' DB<209>

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery FootballPerl is like chess, only without the dice