You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从字符串的每一行中删除指定范围的字符?

解决多行字符串逐行删除指定位置字符的问题

你的问题出在直接对整个字符串做替换操作——因为只有第一行的第6-11位字符是:100:,其他行的对应位置字符不同,所以replace只能替换掉第一行的目标内容。要实现逐行处理,需要把字符串拆分成单独的行,分别处理后再合并:

步骤1:拆分字符串为行列表

用splitlines(True)方法拆分,True参数会保留每行末尾的换行符,保证输出格式和原字符串一致。

步骤2:逐行处理

对每一行,保留前5个字符(第1-5位),再拼接从第12位开始的内容(跳过第6-11位)。注意Python字符串是0索引,所以第6到11位对应的索引是5:11,要删除这部分就取line[:5] + line[11:];如果行长度不足11位(比如空行),则直接保留原行。

完整代码示例

string = ('''

00:00:100:00:00

00:00.711,00:00

00:00,2()!00:00

''')

# 拆分每行并保留换行符
lines = string.splitlines(True)
# 逐行处理
processed_lines = [line[:5] + line[11:] if len(line) >= 11 else line for line in lines]
# 合并为最终字符串
result = ''.join(processed_lines)

print(result)

输出结果

00:0000:00

00:0000:00

00:0000:00

内容的提问来源于stack exchange,提问作者William

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 04:32:31