跳到主内容
UniKit

保留列表字符

按位置批量保留「每行一项」列表里指定位置的字符,其余全部删掉:位置从 1 开始,支持 1,3 与 3-5 区间写法,可从左侧或右侧数;按 Unicode 码点计数,一个汉字或 emoji 只占一个位置,结果按位置升序拼接。

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

列表

保留结果

一行一项,按位置升序排列,可直接复制。

输入列表与位置后即可批量保留字符

行数: 0 · 改动行: 0 · 删除字符: 0

这个工具能做什么

  • 从定长编码里抠出有意义的几位,例如只留订单号的字母前缀与校验位。
  • 批量取手机号、证件号里指定位置的字符做规则校验或脱敏预览。
  • 位置表可一次写多个(1,3,5-8),对长短不一的多行共用同一份规则,越界位置自动忽略。

示例

输入

A-1001-B
A-1002-B
A-1003-B

输出

A1B
A1B
A1B

只保留第 1、3、8 位:每行剩下 A、-、B 三个字符,输出按位置升序排列。

常见问题

位置是从 1 还是 0 开始?

从 1 开始。0 或负数直接报错;区间 3-5 表示第 3、4、5 位,起点必须不大于终点,写反了会报错而不是给出空结果。

输出顺序是按位置还是按原行?

按位置升序。即使你写成 5,1,3,输出也是第 1、3、5 位的字符依次拼接,这样同一份位置表在不同行上的结果稳定可比。

位置超过行长会怎样?

该位置被忽略,行比位置表短时结果自然更短,不会补空格也不会报错。全部位置都越界时该行结果为空,默认再按空行丢掉。

中文字符算几个?

一个汉字算 1 个位置、一个 emoji 也算 1 个位置,按 Unicode 码点计数,不会从半个字符中间切开。组合 emoji(如带肤色的人像)按码点会占多个位置。

关键词:保留字符批量保留keep charactersextract chars按位置保留取指定位置list keep字符提取

同类工具