in reply to Split without removing characters

Here's how I'd go about it, although it doesn't make use of split:
my $foo = "Hello WorldFoo BarPerl MonksSlash Dot"; print "$_ \n" for ($foo =~ /([A-Z][a-z]+)/g); __OUTPUT__ Hello World Foo Bar Perl Monks Slash Dot