【发布时间】:2017-08-16 06:02:47
【问题描述】:
之前将 PascalCase 字符串拆分为单独的单词,我使用了下面的正则表达式:
(.)([A-Z]|\d+)
这适用于Photo100、PhotoMax、PhotoMaxOrig 等输入。但是当遇到像Photo100Orig 这样的字符串时,我上面的正则表达式不会将该字符串分成三部分。
如何更优雅地修改我的正则表达式以支持Photo100Orig 等字符串?
【问题讨论】:
-
试试
(.)([A-Z]|\d*(?=\d)) -
如果您的字符串只包含 ascii 字母和数字,您可以使用
\B([A-Z]|\d+)和 `$1` 作为替换。
标签: regex