按列提取
按分隔符提取某一列。
这个工具能做什么
这个工具做的事情很聚焦:把你粘贴进来的多行文本,按指定的分隔符逐行切开,再从每行的字段里提取某一列,拼成一段新文本。处理 CSV、日志、数据库导出或从表格复制来的内容时,经常只需要其中一列——一堆访问日志里只要 IP,一份用户表里只要邮箱。手工一行行删太笨,专门开 Excel 又嫌重,写正则对不熟的人也不友好。按列提取把「取第几列」这个高频小需求做成一步到位:粘贴、选分隔符、填列号,结果立刻出来。
它的工作方式本质上是对每行做一次字符串拆分(split)。每读到一行,就用你选的分隔符把这行切成一个字段数组,再按下标取出目标列;这种按分隔符提取的方式对规整数据既快又稳。列号支持从 1 开始正着数,也支持用负数从末尾倒着数——-1 是最后一列、-2 是倒数第二列,在字段数不固定、只关心末尾几列时特别顺手。分隔符可选逗号、制表符、空格等,其中制表符匹配的是真正的 \t 字符而非若干空格,所以处理 TSV 和多数命令行输出能精确对齐。整个拆分和列提取都在浏览器里用 JavaScript 即时完成,粘贴上万行也几乎无延迟。
举两个实际例子。第一个是从 Nginx 访问日志抽 IP:每行以空格分隔、客户端 IP 通常在第 1 列,选空格、填 1,就能把成千上万行日志压成一列纯 IP,再拿去做去重或频次统计。第二个是从导出的 CSV 用户表取邮箱:假设列序是 姓名、手机号、邮箱、注册时间,选逗号、填 3(或用 -2 从后往前数)就能单独拿到邮箱列,直接粘进校验或群发流程。其他像 SQL 查询结果、Markdown 表格、Excel 复制出的多列数据,想挑哪一列就填哪一列,原本要写脚本的活儿几秒钟就完成。
有几个边界情况值得留意。分隔符必须和数据的真实格式对齐——标准 CSV 里如果某个字段自身含逗号且被双引号包住(例如 "北京,朝阳区"),按纯逗号切会把它错拆成两列、导致后面列号整体错位,这类带转义的 CSV 更适合用专门的 CSV 解析器;本工具走的是直接 split,面向字段内不含分隔符的规整数据。其次,当某行列数不足、取不到指定列时,该行一般输出为空,方便你回查是不是原始数据缺列。它和「文本分列」「行列转换」这类工具的区别在于:按列提取只保留你指定的那一列,输出是单列结果,而不是把整行铺开成多列表格,目标更单一。
按列提取是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“按列提取”、“提取某列”、“分隔符提取”,说的都是这个。
常见使用场景
- 从 Nginx 访问日志里抽出客户端 IP 列
- 从导出的 CSV 用户表单独取邮箱列
- 把数据库查询结果里的某个字段拎出来
- 从 Markdown 表格提取某一列做对照
- 用负数取每行末尾列,忽略前面变动字段
使用方法
- 把内容粘贴到输入框(生成类工具直接设置选项)。
- 按需要选择选项,点操作按钮。
- 结果出现在下方,点「复制结果」即可带走。