use strict;
my $str = 'CollectibleOpen-WorldVirtual-World
BreedingCardPVP
Auto-BattlerBreedingStrategy
MinigameOpen-WorldVirtual-World
ActionSimulationSports
AdventureMMOStrategy
AdventureCasualPuzzle
Sports
CollectibleSci-FiVirtual-World
Battle-RoyaleeSportsMOBA
ActionPVPShooter
PVPSci-FiTower-Defense
ActionBattle-Royale
PVPSci-FiShooter
BreedingCollectibleMining
CollectibleDeFieSports
ActionAdventureShooter
City-BuildingCollectibleSimulation
ActionStrategy
AdventureOpen-World
BreedingRacingSports
Open-WorldVirtual-World
CollectibleIdle
ActionAdventure
CardCollectiblePVP
Battle-RoyaleFantasyMOBA
City-Building
BuildingMMOStrategy
AdventureMMORPG
ActionAdventureIdle
MOBARPGStrategy
MMORPGStrategy
CardCollectibleIdle
Open-WorldPVPRPG
DeFiMMOSpace
Collectible
CardCollectiblePVP
Auto-BattlerDeFiRPG
AdventureMMOOpen-World
CollectibleOpen-WorldVirtual-World
CollectibleIdleRPG
CardCollectiblePVP
ActionAdventurePVP
Sci-FiShooterSurvival
ActionStrategy
ArcadeMinigame
BreedingPVPRacing
MOBAPVP
ActionSports
PVPSpaceTurn-based
MMOStrategyTower-Defense';
my $regex = qr/[a-z](?=[A-Z])|[A-Z](?=[A-Z][a-z])/mp;
my $subst = '\\g<0> ';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html