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

如何用Python或Bash给文件内每个数字值加1?

如何将文本中所有数字值加1(Python/Bash实现)

针对你需要把文件中所有数字加1的需求,这里提供两种实用的解决方案,分别用Python和Bash工具链实现,都能完美保留原文本的字符结构:

Python 脚本实现

这个方法用正则表达式匹配所有数字,通过回调函数完成数值递增,代码可读性高,适合需要后续扩展的场景:

import re

def increment_match(match):
    # 把匹配到的数字转成整数加1,再转回字符串
    return str(int(match.group()) + 1)

# 替换文件路径为你的输入文件
input_file = "your_input_file.txt"
output_file = "your_output_file.txt"

with open(input_file, "r") as f:
    content = f.read()

# 替换所有数字
modified_content = re.sub(r'\d+', increment_match, content)

with open(output_file, "w") as f:
    f.write(modified_content)

使用说明

  1. 把你的目标文本保存到your_input_file.txt(或者直接修改代码里的文件名)
  2. 运行脚本,处理后的内容会自动写入your_output_file.txt

Bash 命令行实现

如果你习惯用命令行工具,下面两种方法都能快速完成任务:

方法1:Perl 一行命令

Perl的正则替换支持表达式计算,处理这种数字递增特别高效:

perl -pe 's/\d+/ $& + 1 /ge' your_input_file.txt > your_output_file.txt

方法2:Awk 脚本

如果系统里没有Perl,用Awk也能实现相同效果:

awk '{
    while (match($0, /[0-9]+/)) {
        num = substr($0, RSTART, RLENGTH)
        $0 = substr($0, 1, RSTART-1) (num + 1) substr($0, RSTART+RLENGTH)
    }
    print $0
}' your_input_file.txt > your_output_file.txt

使用说明

直接在终端运行命令,替换your_input_file.txt为你的文件名,处理后的结果会输出到your_output_file.txt

示例验证

输入内容:

C1-S0 C2-S0 C3-C1 C1-S0-C2 S0-C1-H7 S0-C1-C3 C2-C4-C3 C2-C5-H10 O6-C5-H10 C2-C5-O6 C3-C1-S0-C2 H7-C1-S0-C2 C4-C2-S0-C1 C5-C2-S0-C1

处理后输出:

C2-S1 C3-S1 C4-C2 C2-S1-C3 S1-C2-H8 S1-C2-C4 C3-C5-C4 C3-C6-H11 O7-C6-H11 C3-C6-O7 C4-C2-S1-C3 H8-C2-S1-C3 C5-C3-S1-C2 C6-C3-S1-C2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:09:46