文本提取工具:从杂乱文本中快速提取有用信息
为什么需要文本提取工具
日常工作里,我们经常要从杂乱文本里捞出特定字段——客户留言里的邮箱、访问日志里的 IP、会议纪要里的链接、网页源码里夹在标签中的联系方式。
一条条复制粘贴,面对几百上千条记录既慢又容易漏。自己写正则又容易匹配不全,或把不该匹配的片段一起捞进来。
Text extractor 文本提取工具内置常用提取模式,并可在匹配前做 HTML 去标签与空白合并,适合把「非结构化粘贴」变成「可复制的一行一条结果」。
手动提取的痛点
- 效率低:大批量记录靠肉眼扫描耗时明显
- 易遗漏:格式一变就跳过
- 边界不准:多选或少选字符很常见
- 重复劳动:换一批文本又要重做同样操作
核心功能介绍
邮箱地址提取
从任意文本中识别常见电子邮件地址。
匹配规则要点:
- 用户名支持字母、数字、点、下划线、加号、减号(如
admin+test@…) - 域名支持多级与连字符(如
sub-domain.example.com) - 面向常见 ASCII 邮箱;中文域名等特殊形态请用自定义正则
输入文本:
"请联系 sales@example.com 或 support@company.cn,也可以发邮件给 admin+test@domain.org"
提取结果:
sales@example.com
support@company.cn
admin+test@domain.org
手机号码提取
提取中国大陆手机号码,并规范化输出为 11 位数字。
匹配规则要点:
- 以 1 开头,第二位为 3–9,共 11 位
- 支持
+86/86前缀 - 支持中间空格或横杠(如
186-0000-1111) - 无效长度会被丢弃,不会当成手机号输出
输入文本:
"联系方式:13812345678,备用号 15987654321,也可以打 +86 186-0000-1111"
提取结果:
13812345678
15987654321
18600001111
URL 链接提取
提取以 http:// 或 https:// 开头的网址,保留路径、查询参数与锚点,并去掉句末多余标点。
匹配规则要点:
- 协议限定为 http / https(避免把裸域名误当成完整 URL)
- 支持路径、查询串与
#锚点 - 句号、逗号等尾随标点会被裁掉,减少粘贴句子时的脏数据
输入文本:
"访问 https://www.example.com/path?query=1#section 了解详情,或点击 http://test.org/page。"
提取结果:
https://www.example.com/path?query=1#section
http://test.org/page
IP 地址提取
提取合法 IPv4 地址(每段 0–255),过滤明显非法的四段数字。
输入文本:
"服务器 IP:192.168.1.100,网关 10.0.0.1,外部地址 203.0.113.25:8080"
提取结果:
192.168.1.100
10.0.0.1
203.0.113.25
数字提取
适合从报价、日志字段或表格粘贴里捞出数值。
匹配规则要点:
- 支持整数与小数
- 支持正负号(如
-12.5) - 支持科学计数法(如
1.2e-3)
若同一段文本里还有手机号或 IP,数字模式也会匹配其中的数字片段——需要「整段手机号」时请改用手机号模式。
大陆居民身份证(18 位)提取
身份证标签先按 18 位形态抓取,再只保留通过 GB 11643 校验的号码(行政区划前缀、日历出生日期、ISO 7064 MOD 11-2 校验位)。仅仅「长得像」但校验位错误的串会被丢掉,避免 OCR 噪声进表格。
输入文本:
"申请人 11010519491231002X,录入错误 110105194912310020"
提取结果:
11010519491231002X
这是格式 + 校验位层面的过滤,不宣称该号曾被签发。单号交互核对请用身份证校验;需要合成测试夹具见中国测试数据生成。
中文连续片段
中文标签提取连续的汉字(CJK 统一表意文字,\u4e00–\u9fa5)。像 订单ABC已发货 会得到 订单 与 已发货 两段。短语被硬换行拆开时,可再开 合并空白。这不是分词——一整段不断开的长串不会被「猜」成词边界。
预处理:去除 HTML 标签与合并空白
从浏览器「查看源代码」或邮件 HTML 里复制时,标签、script、属性会干扰正则。勾选 去除 HTML 标签 后,工具会先去掉 script/style/注释与标签,再解码常见实体,然后才做提取。
勾选 合并空白 会把连续空白(空格、制表、换行)压成单个空格并去掉首尾空白,适合把排版杂乱的粘贴变成更易匹配的一行流。
两个选项可与任意内置类型或自定义正则叠加;去重 对内置与自定义模式都生效,按首次出现顺序保留。
HTML 输入(开启去标签后抽邮箱):
<p>联系 <a href="mailto:a@b.com">a@b.com</a></p>
<script>noise@x.com</script>
提取结果:
a@b.com
使用场景与案例
场景一:从客户留言中提取联系方式
留言格式五花八门:有人写邮箱,有人写电话,有人两者混在一段话里。粘贴整段后,分别切到邮箱 / 手机号标签,再开去重,即可得到可导入表格的列表。
场景二:日志分析排查问题
日志里常有 URL 与 IP。用 URL 或 IP 模式批量抽出后配合去重,可快速看到独立访问来源数量。自定义正则适合抽订单号、请求 ID 等业务字段——可先在 regex tester 里验证模式,再贴回提取工具。
场景三:从网页源码收集链接与邮箱
竞品页或文档站往往是 HTML。先开「去除 HTML 标签」,再抽 URL 或邮箱,比在标签噪声里肉眼找更稳。若源码缩进很重,可再开「合并空白」。
误报速查
| 模式 | 常见过匹配 | 怎么处理 |
|---|---|---|
| 数字 | 手机号 / IP / 订单号里的数字段 | 需要整段实体时改用手机号 / IP / 自定义 |
| URL | 句末 )。, | 内置会裁掉常见句读标点 |
| 邮箱 | 没有像样 TLD 的 user@host 碎片 | 预设要求带点且长度 ≥ 2 的 TLD;特殊 IDN 用自定义 |
| 身份证 | 18 位但校验位错误 | 校验位过滤会自动丢掉 |
| 中文 | 汉字与英文数字粘连 | 预期行为——在非汉字处断开;必要时在表格里再筛 |
实用技巧
1. 先用小样本确认规则
批量跑之前,用十几条典型样本看一眼结果:有没有漏匹配、有没有把别的数字当成手机号。预设覆盖常见形态,但不等于覆盖全世界所有合法变体。
2. 去重要开在「统计独立值」时
同一 IP 或邮箱在日志里反复出现时,去重后的条数才接近「独立实体」数量。若你要保留每次出现(例如按出现顺序做审计),就关掉去重。
3. 注意隐私与本地处理
手机号、邮箱、身份证号都属于个人信息。本站文本提取在浏览器本地完成,不会把粘贴内容上传服务器;在公共电脑上用完记得清空输入。
4. 复杂格式交给自定义正则
订单号、工号、内部工单前缀等,用自定义正则更合适。注意避免嵌套量词一类易触发灾难回溯的写法;工具对自定义模式有超时与风险拦截。表达式不简单时,先在 正则测试 里起草再贴回。
5. 结果导出靠复制
当前结果区支持按行复制。需要进 Excel 时,复制后粘贴到表格即可;若还要做行级加前缀、过滤,可接到 行批量处理 或 文本去重。
结语
文本提取把重复的「捞字段」工作交给规则,把精力留给核对与后续整理。若你经常从杂乱文本里抽邮箱、手机号、URL、身份证或中文片段,可以试试 ToolVault 工具匣的文本提取工具:多种内置模式(含校验位过滤的身份证)、HTML 去标签、合并空白与去重,纯前端运行,无需注册。
排查注记
每个内置模式都把「匹配规则要点」写出来,是因为预设覆盖常见形态、不等于覆盖所有合法变体——实用技巧第一条就是先用十几条小样本确认规则再批量跑。身份证模式是唯一带校验的:按 18 位形态抓取后再过 GB 11643 校验位,长得像但校验位错误的串直接丢掉,避免 OCR 噪声进表格,同时明确这是格式层面的过滤、不宣称该号曾被签发。误报速查表把最常见的一坑放在第一行:数字模式会连带捞出手机号和 IP 里的数字段,要整段实体就换对应的模式。
相关工具
相关文章
Markdown 转 Word 交付指南:样式映射与行内降级
把 Markdown 草稿变成可交付的 .docx:pandoc 命令行与浏览器本地转换两条路线,标题/表格/代码块的 Word 原生样式映射对照,行内格式降级清单,以及「可编辑」为什么比「看起来像」更重要。
Word 转 Markdown 怎么转才干净:两条路线与格式保真对照
docx 转 Markdown 教程:pandoc 命令行与浏览器本地转换两条路线对比,标题/表格/图片/自动编号的保真行为,.doc 旧格式、图片体积、合并单元格等常见坑的解法。
中国车牌号规则与校验:普通牌、新能源与特殊格式全解
中国大陆车牌号编码规则详解:普通蓝牌、新能源 GA36D-2018、武警与使馆牌的结构、省份简称与发牌机关编码,附在线校验方法。