如果特定文本创建删除python中的特定文本之间的文本

时间:2017-05-16 21:45:15

标签: python string text between

我有很多行的数据,看起来像这样:

<br>&emsp;&emsp;<font size="4">&bull;</font>&emsp; Closed Point 3<br>&emsp;&emsp;<font size="4">&bull;</font>&emsp; Opened Shape<br>

我想搜索单词&#34; Point&#34;在行中,如果它发现它只删除这部分:

<br>&emsp;&emsp;<font size="4">&bull;</font>&emsp; Closed Point 3

所以 它只会离开:

<br>&emsp;&emsp;<font size="4">&bull;</font>&emsp; Opened Shape<br>

我被困在这里:

with open(input, 'r') as f:
    lines = f.readlines()
    with open(output, 'w') as w:
        for line in lines:
            if 'Point' in line:

2 个答案:

答案 0 :(得分:1)

你应该调查string.replace;这是一个描述:

string.replace(s, old, new[, maxreplace])
  

返回字符串s的副本,其中所有出现的substring old都替换为new。如果给出了可选参数maxreplace,则替换第一个maxreplace事件。

并考虑如果“new”是一个空字符串会发生什么。

答案 1 :(得分:0)

只看字符串替换方法。

https://www.tutorialspoint.com/python/string_replace.htm

line = line.replace('Closed Point 3','Opened Shape')

您甚至不需要if语句,因为如果找不到匹配项,替换函数将返回原始字符串。