例如,如果我有:
狐狸正在运行。猫在喝酒。手机在Android 4.3上运行
然后拆分的是:
我尝试使用re.sub(r'[.\s+\W]+', '#', s)
,但是最终用#代替了任何空格。
使用s.split('. ')
,我只能解决一半的问题(点后的多个空格和以大写字母开头的空格除外)
答案 0 :(得分:2)
只要您可以确保句子以大写字母开头,就可以对[A-Z]
使用前瞻。您可能还希望同时使用空格进行拆分,可以通过在拆分中包含\s*?
来实现:
import re
s = 'The fox is running. The cat is drinking. The phone runs on Android 4.3. How man days are left this month'
re.split(r'\.\s*?(?=[A-Z])', s)
结果:
['The fox is running',
'The cat is drinking',
'The phone runs on Android 4.3',
'How man days are left this month']