2015-06-16 31 views
0

我希望連續發生分裂如下:分割上只有一個字符

"one_two_three__four" 

,使之成爲:

["one", "two", "three", "_four"] 

什麼正則表達式將允許我這樣做嗎?

我已經試過:

import re 
re.split('_', 'one_two_three__four') 
+0

使用變通一下'(?<!_)_是*不*前面加上'_'''匹配_'。 – Maroun

+0

@巴茲你可以給你的帖子添加更多解釋嗎? –

回答

3
x="one_two_three__four" 
print re.split(r"(?<!_)_",x) 

您可以使用lookbehind,以確保它通過拆分第一_當許多在那裏。

1
(?<=[a-zA-Z])_ 

使用積極的回顧後,你可以

+3

請注意,'\ w'包含'_'。 – Maroun