Python Regex - 从文件中删除包含“:”的单词

问题描述 投票:0回答:2

如果字符串在字符串的开头包含:,我的代码将从文件中删除字符串。

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)

如果在字符串中的任何位置包含:,则删除字符串的正确表达式是什么?

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

python regex python-3.x regex-negation
2个回答
1
投票

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

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

3
投票
with open('test.txt', 'r') as f:
    for line in f.readlines():
        if ':' in line:
            # Remove
        else:
            # Keep
© www.soinside.com 2019 - 2024. All rights reserved.