跳到主内容
UniKit

列表截取左边 N 个字符

把「每行一项」的列表逐行只保留左侧前 N 个字符:按 Unicode 码点计数,一个汉字或一个 emoji 都算一个字符,不会被切成半个乱码;N 大于行长时整行保留,可选给被截断的行加省略号,并给出截断行数与保留字符数。

浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。

列表

截取结果

一行一项,按 Unicode 码点计数,可直接复制。

输入列表后即可截取每行左侧字符

行数: 0 · 截断行: 0 · 保留字符: 0

这个工具能做什么

  • 把一列「编号+名称」的长文本压成固定宽度的短标签,例如只留订单前缀,方便并排对比。
  • 快速浏览日志或爬取结果:每行只看前 N 个字符,不会因为半个汉字变成问号。
  • 把长路径、长 URL 的前缀统一截到固定长度,做成整齐的列表贴进表格或文档。

示例

输入

订单编号A1001
订单编号B2002
短行

输出

订单编号A1
订单编号B2
短行

保留左侧 6 个字符:汉字按 1 个字符算,所以「订单编号A1」正好 6 个;短行不足 6 个字符,原样保留。

常见问题

中文和 emoji 算几个字符?

一个汉字算 1 个字符,一个 emoji 也算 1 个字符,因为计数按 Unicode 码点走,所以不会出现「把 emoji 的代理对切一半」的问号乱码。注意组合 emoji(例如带肤色修饰的人像)按码点会算成多个字符,需要按字形簇精确计数时请用「文本截断」工具。

N 比行长还大怎么办?

该行原样保留,不报错也不补空格。这样一份长短不一的数据可以共用同一个 N:短行不受影响,统计里的「截断行」只计算真正被切掉字符的行。

负数或小数会怎样?

直接报错「输入无法处理」,不会静默按 0 处理。N 必须是不小于 0 的整数:N = 0 时每行结果为空,默认再按空行丢掉。

空行会被保留吗?

默认丢掉,包括被截成空的行。空行在多数导出文件里只是排版残留;需要在输出里保留时把「丢掉空行」关掉,它们会以空行的形式留在结果中。

关键词:列表截取取左边n个字符cut leftleft substring每行截取前n个字符list cut按字符截断

同类工具