Tanktalus's split approach is probably better, but here's a "clever (or not) ... single regex" that produces the same output:
c:\@Work\Perl\monks>perl -wMstrict -MData::Dump -le
"use 5.010;
;;
my $s = 'aaa bbb ccc dd ee ff dd TAG=lls foo TAG=some randome tag TAG
+=last_tag';
;;
my @ra = $s =~ m{ TAG \s* = \K (?: (?! \s* TAG) .)* }xmsg;
dd \@ra;
"
["lls foo", "some randome tag", "last_tag"]
(Needs 5.10+ for the \K regex operator.)
Give a man a fish: <%-{-{-{-<
|