我是python初学者,并遇到以下问题:
我有一个文本文件('demofile.txt'),想要多次剪切两个特定元素({start} and {end}
)之间的所有内容。如例所示,文本文件包含:
'AAAA {start} BBBB {end} CCCC {start} DDDD {end} EEEE {start} FFFF {end} GGGG'
结果应该是:
'AAAA CCCC EEEE GGGG'
首先,我定义了两个作为裁切器的元素
start = '{start}'
end = '{end}'
我试图切除第一部分并使用了以下代码:
text_start = text.find(start)
text_new = text[0:text_start]
print(text_new)
结果是:'AAAA',这是我想要的
下一部分,我尝试了此:
text_start = text.find(end)
text_end = text.find(start, text_start)
text_new = text[text_start+len(end):text_end]
print(text_new)
结果是:'CCCC',这也是我一直在寻找的内容>>
现在我试图将所有内容放在一起并建立一个循环,但失败了:-)
还有更多。因此,直到“ GGG”为止,结果还可以,但是缺少一个G。然后所有的东西都应该删除。我猜想循环以某种方式继续了,并且split语句的循环开始是胡扯。这里有什么解决方案?我想了解出了什么问题并更改了代码。当然,我也对更短,更优雅的方式感兴趣。我敢肯定我做的事很糟糕;-)我发现了一些带有“正则表达式”的东西,但我也无法正常运行。感谢您的任何想法。text_start = text.find(start) text_new = text[0:text_start] text_end = 0 for parts in text.split("{"): text_start = text.find(end, text_end) text_end = text.find(start, text_start) text_new = text_new + text[text_start+len(end):text_end] print(text_new)
结果是:'AAAA CCCC EEEE GGG {开始} BBBB {结束} CCCC {开始} DDDD {结束} ...'
((PS:知道如何将剪切出的所有内容保存在单独的文件中吗?)
我是python初学者,并遇到以下问题:我有一个文本文件('demofile.txt'),想多次剪切两个特定元素({start}和{end})之间的所有内容。如en ...
您可以简单地这样做: