行序号添加与移除
文本所有处理都在浏览器本地完成,数据不上传服务器
输入
把文件拖到这里可直接载入
输出
给每一行加上序号,或者把已有的行首编号去掉。 去掉编号这件事比加号容易出错:`2026.09 发布` 与 `3:00 开始` 里都有「数字 + 分隔符」的形状,宽松的规则会把它们当成编号切掉,句子就从中间断了。所以这里复用「文本清洗」里那条已经调好的判据 —— 要求数字后面跟明确的分隔符、且分隔符后跟空白。两个工具对「什么算编号」的答案因此永远一致。 「空行不编号」不只是不写编号,它也不消耗序号。 让它消耗的话,用户看到的是中间断了几号 —— 而那正是勾这个选项时最不想要的结果。 补零只在非负数上做。 `String(-1).padStart(4, '0')` 会给出 `00-1`,负号跑到数字中间。这只有在起始值为负时才会出现,所以补零前先判符号。
功能
- 六种编号写法:`1.` `1)` `(1)` `[1]` `1、` `1:`
- 起始值与步长可调(步长也能为负,可以倒着编号)
- 补零位数可设,负数不补(避免出现 `00-1`)
- 空行可以不编号也不占号,序号因此不会在中途断开
- 去掉编号认同样的六种写法,也能认 `1、` 这种不带空格的
- 不会把日期与时间当成编号切掉(`2026.09 发布`、`3:00 开始` 都安全)
- 添加与去掉用的是同一条判据,来回操作可以还原
- 全程在浏览器本地计算,内容不上传
使用方法
- 粘贴要编号的文本
- 选「添加序号」或「去掉行首编号」
- 添加时挑一种写法,按需要调起始值、步长与补零位数
- 点「复制」取走结果
常见问题
- 去掉编号时,会不会把正文里的数字也删掉?
- 不会。规则要求数字后面必须跟明确的分隔符(`.` `)` `:` `、` 等),并且分隔符后面还要跟空白。所以 `2026.09 发布` 里的 `2026.` 后面跟的是 `0` 而不是空白,不会被当成编号;`3:00 开始` 同理。唯一放宽的是 `1、` 与 `1,` —— 顿号与逗号是无歧义的列举符,允许不带空格。
- 勾了「空行不编号」,序号为什么还是断的?
- 序号只会因为两种原因断开:一是勾选框没生效(检查下拉是不是停在「去掉行首编号」上),二是那些「空行」其实含有空格或制表符。只含空格的行在字符串层面不是空行 —— 工具会把它当成有内容的行来编号。先用「文本清洗」去掉首尾空白,再来编号即可。
- 补零之后负数为什么没有补上?
- 因为 `String(-1).padStart(4, '0')` 会得到 `00-1`:负号被推到数字中间,那是个坏结果。所以补零只对非负数生效,负数原样输出。起始值为负的场合(比如倒计时的 `-3 -2 -1`),补零本来也没什么意义。
相关工具
文本清洗
文本清洗从日志或表格里复制出来的一列内容:去重行、排序、去空行、去首尾空白、去行号、合并多空格,规则逐条开关。粘贴的内容只在本机处理。
多行合并成一行
文本把多行文本合并成一行:换行可换成空格、逗号、分号或直接删掉,空行与首尾空白先处理。适合粘进单行输入框。
按列截取
文本从每行里取出指定的列:按分隔符分列或按字符位置截取,支持 2-4 区间与负数(从末尾数),取不到就留空。
文本对比
文本把两份文本逐行对比,高亮标出新增、删除与未改动的行,改动按最小差异对齐,而不是整段标成变了。全部在浏览器本地完成,内容不上传。
字数统计
文本中英混排的文本到底有多长?中文按字、英文按词分开统计,给出字符数、行数、字节数、阅读与朗读时长,以及会被切成几条短信。全部在本机完成。
命名风格转换
文本在十四种命名风格之间转换标识符,拆词时认得 fooBarBaz 与 FOO_BAR 这类混写,连续大写也会按词拆开。全部在浏览器本地完成,不上传。