in reply to Greedy flip flop operator?

Using three dots and negating the condition works, but you have to omit the last line, which is easy if you capture the value returned by the flipflop and check it for E:
#!/usr/bin/perl use warnings; use strict; while (<DATA>) { if (my $flip = /^start/ ... /^[^+]/) { print unless $flip =~ /E/; } } __DATA__ start text + 123 + 456 + 789 some other text not starting with +

($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,