Python 如何将文本文件拆分为具有wilcards的特定字符串?

Python 如何将文本文件拆分为具有wilcards的特定字符串?,python,string,list,Python,String,List,我有一个文本文件,其中包含教科书中的解决方案,我试图将每个解决方案拆分为自己的文本文件,在搜索了这些解决方案后,我似乎找不到一个优雅的解决方案 每个解决方案前面都有问题编号,如*1-3或*4-2 我可以读入文件并将每一行存储在一个列表中,但是我在实际处理要按标题拆分的列表时遇到了问题 下面是一个pastebin,其中包含一些直接来自.txt的解决方案: 谢谢大家! 使用: 该正则表达式将查找*-,并按任何匹配项拆分全文。您可能需要对空成员进行一些清理。您是否尝试过使用正则表达式? #!/usr/

我有一个文本文件,其中包含教科书中的解决方案,我试图将每个解决方案拆分为自己的文本文件,在搜索了这些解决方案后,我似乎找不到一个优雅的解决方案

每个解决方案前面都有问题编号,如
*1-3
*4-2

我可以读入文件并将每一行存储在一个列表中,但是我在实际处理要按标题拆分的列表时遇到了问题

下面是一个pastebin,其中包含一些直接来自.txt的解决方案:

谢谢大家!

使用:


该正则表达式将查找
*-,并按任何匹配项拆分全文。您可能需要对空成员进行一些清理。

您是否尝试过使用正则表达式?
#!/usr/bin/python 

import re

file_name = "" # put the txt file you're working on

new_header = None

for line in open(file_name,"r").readlines():
    if re.search("^[*][0-9]+[-][0-9]+[;]", line):
        if new_header:
            new_header.close() 
        new_header = open("%s_section:%s" % (file_name, line), "w")
    if new_header:
        new_header.write(line)

if new_header:
    new_header.close 
#!/usr/bin/python 

import re

file_name = "" # put the txt file you're working on

new_header = None

for line in open(file_name,"r").readlines():
    if re.search("^[*][0-9]+[-][0-9]+[;]", line):
        if new_header:
            new_header.close() 
        new_header = open("%s_section:%s" % (file_name, line), "w")
    if new_header:
        new_header.write(line)

if new_header:
    new_header.close