0

我有各种各样的文本,我想执行类似于裁剪图片的操作。

该文档的长度为几千字节,但格式为

“等等等等标题正文结束等等等等。”

我可以使用什么功能来做到这一点crop(document,"title","end")并让它返回"title body end"

问题是替换文本的函数string.replace()总是用其他东西替换一些已知的文本。但我知道title在每个文档中,end和但内容before,之间和之后是未知或唯一的。

4

2 回答 2

1

有很多方法,例如:

import re
doc = "blah blah title body end blah blah."
print re.search('title.+?end', doc).group(0) # title body end
于 2013-03-21T18:47:25.293 回答
1

您可以使用该方法find获取起始字符串rfind第一次出现的索引,并获取结束字符串最后一次出现的索引。使用这些索引,您可以使用 Python 的切片返回文档的正确部分。

def crop(doc, start, end):
    return doc[doc.find(start):doc.rfind(end)+len(end)]
于 2013-03-21T18:52:18.057 回答