I would not advise to do so.
If the name exists with different case, I'm pretty sure your app would be refused, as a rik to mislead users.
As per 2.3.7, that would probably be considered as gaming the system.
- 2.3.7 Choose a unique app name, assign keywords that accurately describe your app, and don’t try to pack any of your metadata with trademarked terms, popular app names, or other irrelevant phrases just to game the system. App names must be limited to 30 characters and should not include prices, terms, or descriptions that are not the name of the app. App subtitles are a great way to provide additional context for your app; they must follow our standard metadata rules and should not include inappropriate content, reference other apps, or make unverifiable product claims. Apple may modify inappropriate keywords at any time or take other appropriate steps to prevent abuse.
In addition 4.1 forbid to use several similar names (minor changes), which would be the case here, even if you developed all the apps.
- 4.1 CopycatsCome up with your own ideas. We know you have them, so make yours come to life. Don’t simply copy the latest popular app on the App Store, or make some minor changes to another app’s name or UI and pass it off as your own. In addition to risking an intellectual property infringement claim, it makes the App Store harder to navigate and just isn’t fair to your fellow developers.
Trademark law does not care about capitalization so an app that uses a name is establishing a trademark over names that differ only by capitalization changes. You can add a name at the end of another word as long as that name adds some sort of substance to the phrase; ToyBOX SurPRISE might not infringe Toybox. It depends on whether one would confuse one named product with the other named product. And all of your examples fail that test, IMHO.
That's trademark law. As far as the app store is concerned, I think a single character change, but not capitalization, will be allowed. ToyBox+ will work - until ToyBox's developer objects. You can test a name early in development. If the system accepts your name you are set; that is, until someone objects. Then it's a question of whether one name can be confused with the other.