local $_ = $string_to_match; my @reparts = split ' ', $re; my $pre = ''; while (@reparts) { $pre .= shift @reparts; print "$pre w/ lookahead: ", /$pre (?=@reparts)/x, "\n"; print "Prefix $pre: ", /$pre/x, "\n"; } print "Shebang entier: ", /$pre/x, "\n";