正则表达式用大写和低字符分割String

Hoa*_* Vu 2 java regex hashtag

我想分裂如下: TwitterHashtagIsVeryCOMPLICATED

分裂后的字符串如: Twitter Hashtag Is Very COMPLICATED

我可以使用正则表达式吗?

非常感谢任何建议.

das*_*ght 5

这应该工作:

str.split("(?<=[a-z])(?=[A-Z])")
Run Code Online (Sandbox Code Playgroud)

我们的想法是使用零长度lookbehind表示小写字母,使用零长度lookbehead表示大写字母.此构造仅匹配camel case字符串中的"单词分隔符".

这是关于ideone演示.