⭐ 觉得好用?收藏备用,下次直接打开 ✨ 开通会员去广告 · 更多权益即将开放 ☕ 支持作者
预设
拆分 排序
引号 前后缀 连接 整体包裹
输入
结果

列表处理解决一件很具体的事:手里有一列数据,需要变成另一种排布。 整条流水线是「拆开 → 清洗 → 重新拼」,每一步都能单独调,结果实时预览。

三步流水线

步骤能做什么
拆开按行 / 按逗号(中英文都认)/ 按空白 / 自定义分隔符
清洗去首尾空格、去空行、去重、排序(自然序,item2 在 item10 前)
拼回每项加引号和前后缀,选连接符,最后整体包裹

内置预设

  • SQL IN — ('a', 'b', 'c'),单引号按 SQL 惯例转义
  • SQL IN(数字) — (1, 2, 3),不加引号
  • JS 数组 — ["a", "b"]
  • 逗号分隔 / 每行一个 / Markdown 列表

预设只改输出格式,不会动你已经调好的拆分、去重和排序。

引号转义的两套惯例

单引号按 SQL 惯例翻倍(O''Brien),双引号和反引号按 JS 惯例加反斜杠(\")。这两套不通用——用单引号拼 JS 字符串的场景需要自己确认结果。

本地运行

所有处理都是浏览器内的字符串操作,数据不出机器,适合处理带真实订单号、用户 ID 的列表。

📍使用场景

  • 从表格复制一列去查数据库Excel 里选中一列订单号复制过来,一键变成 ('A1', 'A2', 'A3') 直接粘进 SQL 的 IN 里。
  • 把一行参数拆成一列反过来也行——按逗号拆开、每行一个,贴进配置文件或对照检查。
  • 清洗人工整理的名单去掉空行、首尾空格、重复项,再排个序,比在 Excel 里点半天快。
  • 生成代码里的常量数组加双引号、逗号连接、方括号包裹,直接产出 JS/TS 数组字面量。

❓常见问题

生成 SQL IN 子句时,值里带单引号会出问题吗?

不会,工具默认会转义。SQL 字符串里的单引号要写成两个(O'Brien),否则引号提前闭合,轻则语法错误、重则变成注入点。选「单引号」时「转义引号」默认开启,按 SQL 惯例把 ' 翻倍。双引号和反引号走的是另一套惯例(加反斜杠 \",JS 风格),因为这两种引号主要用在代码里。如果你用单引号拼的是 JS 字符串而不是 SQL,转义规则对不上,得自己确认。

排序为什么 item2 排在 item10 前面?

这是自然序(natural sort),刻意的。普通字符串排序按字符逐位比,"item10" < "item2" 因为 1 < 2,结果 item10 跑到前面——这几乎不是任何人想要的。工具用 Intl.Collator 开了 numeric 选项,数字部分按数值比较,所以 item1 < item2 < item10。中文也按拼音序排,不是按 Unicode 码点。

「去重」保留的是第一个还是最后一个?

第一个,其余原样丢弃。去重发生在 trim 和去空行之后、排序之前,所以 "abc" 和 " abc " 在开启「去首尾空格」时算同一项。注意去重区分大小写:ABC 和 abc 是两项。需要忽略大小写去重的话,先用命名转换工具统一大小写再回来。

点了预设,我设的去重和排序会被清掉吗?

不会。预设只改输出侧的四项——引号、前后缀、连接符、整体包裹。拆分方式、去空格、去重、排序是你对自己这份数据的判断,换个输出格式没理由重置。所以流程可以是:先调好清洗和排序,再依次点不同预设看结果。

连接符能填换行或制表符吗?

能。「连接」下拉里直接有换行和制表符两项。选「自定义」时输入框里填的是字面文本,打不出真的换行——需要多字符分隔符(比如 " OR ")用自定义,需要换行直接选预设那项。

处理量有上限吗?数据会上传吗?

没有硬上限,全部在浏览器本地用纯字符串操作完成,不上传任何内容。实际感受上几万行是流畅的;十万行以上因为是实时预览(每次输入都重算一遍),输入时会有卡顿——这种量级建议先粘好再调选项。localStorage 会存最近一次的输入和选项作为草稿,可随时清空。