想要在更改大小写时拆分字符串

时间:2014-06-05 16:23:59

标签: python regex string python-3.x

我试图在一个单词内部从小写切换到大写时分割一个字符串。

示例:

'New Hampshire, State ofColorado, State ofU.S. Court of Appeals for the D.C. CircuitDistrict of Columbia Court of AppealsMaine, State of'

拆分字符串应该是什么样的:

['New Hampshire, State of', 
 'Colorado, State of', 
 'U.S. Court of Appeals for the D.C. Circuit', 
 'District of Columbia Court of Appeals',
 'Maine, State of']

1 个答案:

答案 0 :(得分:4)

您可以在(?<=[a-z])(?=[A-Z])上分开(如果您至少只处理字母a-z)。

由于python中的split不允许零宽度匹配,你可以做一些愚蠢的事情:

re.sub(r'(?<=[a-z])(?=[A-Z])', '!RANDOM!MARKER!', str).split('!RANDOM!MARKER!')