首页 > 解决方案 > 尝试用 '_______' 替换长度 > 3 的数组中的所有字符串

问题描述

我将段落转换为数组,这样如果数组中的每个单词的长度大于 3,我就可以将其替换为空格。

我可以轻松创建数组。我现在坚持让它等于空白,为什么等于不够?

f = open('save.txt', 'r')

import re

with open("save.txt") as f:
    for line in f:
        newline = re.sub("[^\w]", " ",  line).split()
        for i in newline:
            if len(i) > 3:
                i == '________'

标签: python

解决方案


您不需要将行转换为数组来执行此操作,您可以使用正则表达式匹配长度超过 3 个字符的单词,re.sub()并将其替换为占位符。

newline = re.sub(r'\w{4,}', '________', line)

推荐阅读