Python 正则表达式 - 从文件中删除包含“:”的单词

Python Regex - remove words containing ":" from file

如果字符串在 start 处包含 :,我有代码将从文件中删除该字符串。

with open("test1.txt") as the_file:
    for each_line in the_file:
        each_line = " ".join(filter(lambda x:x[0]!=':', each_line.split()))
        print(each_line)

如果字符串中包含 : anywhere,删除字符串的正确表达式是什么?

例如,如果文件包含 :raining, raining:, rai:ning,它只会删除 :raining。我想从文件中删除所有这些词。

with open('test.txt', 'r') as f:
    for line in f.readlines():
        if ':' in line:
            # Remove
        else:
            # Keep

这可能会有所帮助。删除所有包含 ":" 的字符串。

a = ":raining, raining:, rai:ning  aaaaaaa"
def removeStr(val):
    if ":" not in val:
        return val

each_line = " ".join(filter(removeStr, a.split()))
print each_line

输出:

aaaaaaa