我有一个用序数分隔的长字符串。例如:“1。早上好2.你好3.再见”(但开始时有一个数字并不是强制性的,我不知道有多少数字,如果有的话。)我想得到像这样的列表:["Good morning", "Hello", "Bye"]
答案 0 :(得分:4)
In [1]: s = '1. Good morning 2. Hello 3. Bye'
In [2]: import re
In [3]: re.split('\d+\. ', s)
Out[3]: ['', 'Good morning ', 'Hello ', 'Bye']
如果开头没有数字,则第一个元素不会为空。但是,这并不会检查数字是否正确。如果这很重要,请告诉我。
编辑,感谢@ glglgl 的评论。在' *\d+\. *'
上分割可能在前导/尾随空格方面更好。