![](/img/trans.png)
[英]How to split a string AFTER every substring in Regex Python
[英]Python Regex - Split string after every character
你的正則表達式是向后的 - 它應該是任意數量的數字,后跟a
, b
或c
。 另外,我不會使用split
,它返回煩人的空字符串,但是findall
:
>>> re.findall('(\d+[abc])', '12a44b65c')
['12a', '44b', '65c']
如果你能夠使用更新的正則表達式模塊 ,你甚至可以在零寬度匹配上進行拆分(即使用外觀)。
import regex as re
rx = r'(?V1)(?<=[a-z])(?=\d)'
string = "12a44b65c"
parts = re.split(rx, string)
print parts
# ['12a', '44b', '65c']
這種方法在后面查找az
中的一個和一個數字( \\d
)。
原始的re.split()
不允許零寬度匹配,為了兼容性,您明確需要在模式中使用(?V1)
打開新行為。
請參閱regex101.com上的演示 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.