Sublime实现按数字规律批量插入递增序列_快速生成测试数据与模拟主键ID

落芳同学_9975

落芳同学_9975

2026-06-10

397人浏览

原创

sublime text原生支持insert enumerated lines生成1.、2.式编号,但无法设起始值或步长;需用increment selection插件列选后手动输入起始数(如1001)实现自定义序列,再配合正则替换添加前缀、零填充等格式。

sublime实现按数字规律批量插入递增序列_快速生成测试数据与模拟主键id

用 Ctrl+Shift+P 调出命令面板后搜 Insert Enumerated Lines

Sublime Text 自带这个功能,但默认没绑定快捷键,也藏得深——它不叫“插入递增数字”,也不在编辑菜单里直接显示。你必须打开命令面板(Windows/Linux 是 Ctrl+Shift+P,macOS 是 Cmd+Shift+P),输入关键词 Insert Enumerated Lines 才能触发。

它会从光标所在行开始,对每一行插入一个递增数字,格式为 1. 、2. 这类带点的编号;如果你只需要纯数字(比如模拟主键 1001、1002),就得配合后续步骤调整。

  • 选中 N 行空白行再执行,就能生成 N 个连续编号;不选中则从当前光标行向下逐行插入(包括已有内容的行,慎用)
  • 起始数字固定为 1,不能直接设起始值或步长——这是最常被卡住的地方
  • 插入后所有数字都是普通文本,不带语法高亮,不影响后续编辑

想从 1001 开始、步长为 1?用 Column Selection + Increment Selection 插件

原生功能不够用时,Increment Selection 是最轻量、最稳的选择。它不改 Sublime 核心逻辑,只在列选区上做递增,完全可控。

安装后,先用 Ctrl+Alt+↑/↓(或鼠标拖拽时按住 Ctrl+Alt)竖向选中一列空白位置(比如 10 行开头),松开后输入起始数字(如 1001),再按 Ctrl+Shift+P → 输入 Increment Selection 回车——它会自动按行递增,生成 1001、1002…

  • 必须是「列选择」(即多行同一列的矩形区域),普通行选或全选无效
  • 起始值由你手动输入决定,步长默认为 1,可在命令面板里输入 Increment Selection: Set Step 修改
  • 如果列里已有字符(比如前面有 ID:),插件会把数字追加到末尾,不是覆盖——要覆盖就得先清空那列

批量生成带前缀/后缀的 ID,比如 user_0001、user_0002,用正则 + Find in Files 配合 $1 引用

当你要的不是纯数字,而是带固定前缀、零填充、甚至带分隔符的序列(如 log-20240501-001),原生替换就比插件更灵活。

Sublime Text Build Linux版
Sublime Text Build Linux版

Sublime Text Linux x86-64 deb 安装包。官方也提供 rpm、tar.xz 和软件源安装方式。

下载

先用列选中一列空白,填入任意占位符(比如全输 0),然后打开替换面板(Ctrl+H),勾选 Regular Expression,查找框填 0,替换框填 user_$1 ——这当然不行,因为 $1 没有捕获组。正确做法是:先用 Ctrl+Shift+F 在当前文件「Find in Files」里搜 ^$(空行),替换为 user_0001,再手动选中所有刚生成的 0001,用 Increment Selection 处理——这样前缀就锁死了。

  • 零填充不能靠 Increment Selection 自动生成,得自己写好 0001 再递增,否则会变成 1、2、3
  • 如果行数超 1000,手敲 0001 太累,可先用 Python 生成一行脚本:print('\n'.join([f'user_{i:04d}' for i in range(1, 101)])),复制结果进 Sublime 再粘贴
  • 别依赖「全部替换」自动生成序列——正则本身不带状态,无法让每行的替换结果依赖上一行

为什么不用宏录制或 Python 插件写死逻辑?

有人试过录宏,按一次 Ctrl+V 粘贴一个数,再按一次 Ctrl+↓ 移动,循环 100 次……结果发现宏无法动态更新数字,最终全是重复值。也有用户写 Python 插件调 view.insert(),但调试成本高、跨版本兼容差,且一旦出错容易卡死 Sublime。

真正高效的做法,是把「生成序列」拆成两步:先机械生成基础结构(靠列选+插件),再用查找替换做格式微调(前缀、分隔、零宽等)。这两步都可逆、可中断、不依赖外部环境。

  • 列选择是 Sublime 最稳定的行为,哪怕文件有百万行,选 1000 行列也秒响应
  • Increment Selection 插件源码不到 50 行,无网络请求、无配置文件、不写 registry,关掉插件后原有文本也不受影响
  • 所有操作都不修改文件编码或换行符,避免测试数据因格式错乱导致解析失败

复杂需求往往败在试图一步到位。先让数字动起来,再让它长得像你要的样子——中间那层「手动补零」或「多按一次替换」,不是倒退,是留出纠错余地。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime sublime text

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

2026.10.22

0

11

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

2026.10.22

0

10

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

2026.10.22

0

15

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

2026.10.22

0

10

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

2026.10.22

0

25

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

2026.10.22

0

15

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

2026.10.22

0

15

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

2026.10.22

20

12

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

2026.10.22

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程