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

如何用脚本将范围格式文本展开为逐行连续值?

用脚本批量展开带范围的编号列表

当然可以通过脚本轻松实现这个需求,下面提供两种常用的脚本方案:

Python 脚本方案

适合跨平台使用,逻辑清晰易修改:

# 可以替换为从文件读取输入:
# with open('input.txt', 'r') as f:
#     input_text = f.read()

input_text = "TSNN-00500--00503 TSNN-00510--00515"
range_items = input_text.strip().split()

for item in range_items:
    prefix, rest = item.split('-', 1)
    start_str, end_str = rest.split('--')
    start = int(start_str)
    end = int(end_str)
    num_length = len(start_str)
    
    for num in range(start, end + 1):
        print(f"{prefix}-{num:0{num_length}d}")

使用方式

  1. 将上述代码保存为expand_numbers.py
  2. 如果需要从文件读取输入,注释掉input_text的直接赋值,取消文件读取部分的注释
  3. 运行并将结果输出到新文件:
    python expand_numbers.py > output.txt
    

Bash 脚本方案

适合Linux/macOS环境下的命令行快速处理:

#!/bin/bash

# 替换为从文件读取:input=$(cat input.txt)
input="TSNN-00500--00503 TSNN-00510--00515"

for item in $input; do
    prefix=$(echo "$item" | cut -d'-' -f1)
    start=$(echo "$item" | cut -d'-' -f2)
    end=$(echo "$item" | cut -d'-' -f4)
    len=${#start}
    seq -f "${prefix}-%0${len}g" $start $end
done

使用方式

  1. 将代码保存为expand_ranges.sh
  2. 赋予执行权限:chmod +x expand_ranges.sh
  3. 运行并输出到文件:
    ./expand_ranges.sh > output.txt
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 00:15:30