Python 如何拆分字符串分隔的数字
我有一个用序数分隔的长字符串。例如:“1.早上好2.你好3.再见”(但开头不一定要有数字,我不知道有多少数字,如果有的话。)我想得到这样的列表:Python 如何拆分字符串分隔的数字,python,string,split,python-2.7,Python,String,Split,Python 2.7,我有一个用序数分隔的长字符串。例如:“1.早上好2.你好3.再见”(但开头不一定要有数字,我不知道有多少数字,如果有的话。)我想得到这样的列表:[“早上好”,“你好”,“再见”] 如果开头没有数字,则第一个元素不会为空。但是,这并不能检查数字的顺序是否正确。让我知道这是否重要 编辑:感谢@glglglgl的评论。在'*\d+\.*上拆分在前导/尾随空格方面可能更好 如果开头没有数字,则第一个元素不会为空。但是,这并不能检查数字的顺序是否正确。让我知道这是否重要 编辑:感谢@glglglgl的评论
[“早上好”,“你好”,“再见”]
如果开头没有数字,则第一个元素不会为空。但是,这并不能检查数字的顺序是否正确。让我知道这是否重要
编辑:感谢@glglglgl的评论。在'*\d+\.*上拆分
在前导/尾随空格方面可能更好
如果开头没有数字,则第一个元素不会为空。但是,这并不能检查数字的顺序是否正确。让我知道这是否重要
编辑:感谢@glglglgl的评论。在
'*\d+\.*上拆分
在前导/尾随空格方面可能更好。谢谢。我不知道在python中如何使用正则表达式进行拆分。我确信数字的顺序是正确的。re.split()
的+1,我一直忘了:)我的解决方案的输出结果是相同的re.sub('\d+','',s)。split('.')
,但更复杂。@Levon您的解决方案可能有一个在短语中消除数字的陷阱。除非数字后面跟一个句点和一个空格:'1,否则我的代码不会这样做。早上好。你好3。再见。我厨房里有5条狗
@LevLevitsky你说得对,谢谢你指出这一点。我还在学习正则表达式。另外,您的解决方案在概念上更直接、更清晰,我没有尝试,但可能是“*\d+\”
最好在数字前加上空格…谢谢。我不知道在python中如何使用正则表达式进行拆分。我确信数字的顺序是正确的。re.split()
的+1,我一直忘了:)我的解决方案的输出结果是相同的re.sub('\d+','',s)。split('.')
,但更复杂。@Levon您的解决方案可能有一个在短语中消除数字的陷阱。除非数字后面跟一个句点和一个空格:'1,否则我的代码不会这样做。早上好。你好3。再见。我厨房里有5条狗
@LevLevitsky你说得对,谢谢你指出这一点。我还在学习正则表达式。另外,您的解决方案在概念上更直接、更清晰,我没有尝试,但可能是“*\d+\”代码>最好是在数字前吃空格。。。
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']