python - 尝试用 '_______' 替换长度 > 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 == '________'
解决方案
您不需要将行转换为数组来执行此操作,您可以使用正则表达式匹配长度超过 3 个字符的单词,re.sub()
并将其替换为占位符。
newline = re.sub(r'\w{4,}', '________', line)
推荐阅读
- jmeter - 如何根据命令行传入的Environment参数执行Jmeter脚本
- qt - 如何将 QTableWidget + QComboBox 放在一起,如果值从同一行的 QComboBox 更改,如何访问特定行
- r - 如何使用“应用”自动将标题放在一系列生成的图上
- javascript - 从 api 获取数据并将其传递给 React 中的状态
- c# - 包括 NGravatar 会导致 OData.Core dll 找不到(并使用更高版本)
- html - 如何在可内容编辑的 HTML 元素中的两个字符之间插入零宽度线
- java - 使用 Android Studio 的 webview 时无法在 HTML 文件中使用相机
- node.js - 未定义变量:运行 npm 开发服务器时的“$font-weight-bolder”
- excel - 用 3 个列从一个范围内搜索和替换 3 个变量
- r - 使用管道在列表中的单个列上应用 dplyr 函数