如何以特定方式拆分包含数字和字母的文本?

我试图在线找到解决方案。但是我没有成功。我想这样分割文本:

那是原始的:

    '16.11.,ARD,20.15 Uhr: „Mein Schwiegervater,der Camper“
    Vor einigen Jahren hat die ARD-Tochter 

    17.11.,20.15 Uhr: „Tatort: Die Pfalz von oben“
    Natürlich knüpft der Jubiläums-„Tatort“ mit

    18.11.,ZDF,20.15 Uhr: „Stumme Schreie“
    „Erschütternd“ ist als Begriff fast noch zu'

这就是我所需要的:

    ['16.11.,der Camper“
    Vor einigen Jahren hat die ARD-Tochter','17.11.,20.15 Uhr: „Tatort: Die Pfalz von oben“
    Natürlich knüpft der Jubiläums-„Tatort“ mit','18.11.,20.15 Uhr: „Stumme Schreie“
    „Erschütternd“ ist als Begriff fast noch zu']

此选项也会使我满意:

    ['16.11.,20.15 Uhr'],['„Mein Schwiegervater,der Camper“
    Vor einigen Jahren hat die ARD-Tochter'],['17.11.,20.15 Uhr'] ['Tatort: Die Pfalz von oben“
    Natürlich knüpft der Jubiläums-„Tatort“ mit'],['18.11.,['„Stumme Schreie“
    „Erschütternd“ ist als Begriff fast noch zu']

我怎么到那里? 我尝试了split方法和其他可能的方法,但是没有解决……正则表达式split可能是一种选择,但是我失败了,因为每行有两个数字。

提前谢谢您,维克多

wzqzl 回答:如何以特定方式拆分包含数字和字母的文本?

您可以将字符串分成两行:

s = open('test','r').read()
s.split('\n\n')
Out[38]: 
["'16.11.,ARD,20.15 Uhr: „Mein Schwiegervater,der Camper“\nVor einigen Jahren hat die ARD-Tochter",'17.11.,20.15 Uhr: „Tatort: Die Pfalz von oben“\nNatürlich knüpft der Jubiläums-„Tatort“ mit',"18.11.,ZDF,20.15 Uhr: „Stumme Schreie“\n„Erschütternd“ ist als Begriff fast noch zu'"]

然后,您可以根据需要在单行('\ n')或冒号(':')上进行更多分割。

,

第一个要求:

import pprint
text = """'16.11.,der Camper“
Vor einigen Jahren hat die ARD-Tochter 

17.11.,20.15 Uhr: „Tatort: Die Pfalz von oben“
Natürlich knüpft der Jubiläums-„Tatort“ mit

18.11.,20.15 Uhr: „Stumme Schreie“
„Erschütternd“ ist als Begriff fast noch zu'"""

pprint.pprint(text.split('\n\n'))

输出:

['16.11.,der Camper“\n'
 'Vor einigen Jahren hat die ARD-Tochter ',20.15 Uhr: „Tatort: Die Pfalz von oben“\n'
 'Natürlich knüpft der Jubiläums-„Tatort“ mit','18.11.,20.15 Uhr: „Stumme Schreie“\n'
 '„Erschütternd“ ist als Begriff fast noch zu']

第二个要求:

lst = text.split('\n\n')
lst2 = [[elem] for elem in sum((i.split(': ',1) for i in lst),[])]
print(lst2)

输出:

[['16.11.,20.15 Uhr'],['„Mein Schwiegervater,der Camper“\nVor einigen Jahren hat die ARD-Tochter '],['17.11.,['„Tatort: Die Pfalz von oben“\nNatürlich knüpft der Jubiläums-„Tatort“ mit'],['18.11.,['„Stumme Schreie“\n„Erschütternd“ ist als Begriff fast noch zu']]
本文链接:https://www.f2er.com/3052935.html

大家都在问