#!/usr/bin/perl use strict; # https://perlmonks.org/?node_id=11112687 use warnings; $_ = 'aaa bbb ccc ddd ccc eee'; my @qqq; /(aaa.*?ccc)(?{push @qqq, $&})(*F)/g; print join("\n", @qqq, ''); #### aaa bbb ccc aaa bbb ccc ddd ccc