Help for this page
push @stack, [ COMMENT => $1 ]; ... $stack[-1][0] eq 'COMMENT' and pop @stack for 1..3;
$ perl -le " $_ = qq{;banana\n;ro\n;sham\n;bo\n}; print; s{(?:^;[^\r\n +]*[\r\n]+){1,3}\Z}{}m; print; " ;banana ... ;bo ;banana