文本提取
从一段文本里批量提取手机号、邮箱、网址、日期、金额、IP、身份证号等,逐行列出所有命中结果并统计数量
文本提取是什么
从一大段杂乱文本里把手机号、邮箱、网址、IP、日期、金额、身份证、邮编等结构化信息一次性捞出来。勾选要提取的类型,支持自定义正则,可选同类型去重,实时显示每类命中的条数。全部在浏览器本地算,文本不上传。
所有计算都在你的浏览器本地完成,输入的内容不会上传到服务器。
怎么用文本提取
- 把要处理的文本整段粘进输入框(从网页、日志、聊天记录里框选复制即可)
- 在「提取类型」里勾选需要的类型:手机号 / 邮箱 / 网址 / IP / 日期 / 时间 / 金额 / 身份证 / 邮编 / 数字 / 中文,或勾「自定义正则」自己写一条
- 「同类型去重」勾上后,同一内容只保留第一次出现,避免重复刷屏
- 结果区按类型分组实时列出所有命中项,并统计每类各几条、总共几条
- 点「复制」把当前类型的命中项带走,或把整段结果粘回表格进一步处理
示例
输入
联系方式:张三 13800138000,邮箱 zhang@qq.com,官网 https://www.example.com 或 www.test.cn。IP 192.168.1.1,日期 2026-10-07,金额 ¥99.5,身份证 11010519491231002X。输出
手机号 1 个、邮箱 1 个、网址 2 个、IP 1 个、日期 1 个、金额 1 个、身份证 1 个(合计 8 条命中)网址类型同时匹配 http(s):// 开头和 www. 开头的写法;身份证末位是校验位 X
常见问题
为什么我的一串数字没被识别成手机号?
手机号规则是 1[3-9] 开头且恰好 11 位。少于或多于 11 位、或者开头不是 13~19 的,都不会命中;如果它是某个长号的一部分(如身份证、订单号),也会因为边界判断被排除。
自定义正则怎么写?
在「提取类型」里勾「自定义正则」,下面会出现一个输入框,写一条 JavaScript 风格的正则即可(不用写两端的斜杠)。例如抓「订单号」可以写 单号\d{8}。非法正则会被忽略,不会让页面报错。
去重是按整段文本还是按类型?
按类型内去重:同一个手机号出现两次,勾上去重后只列一次;不同类型的命中互不影响。如果你只想看「出现了哪些不同的值」,就勾上去重。
能同时提取多种类型吗?
可以,勾选多个类型后结果会按类型分组显示,每组单独计数。例如一次把一段客户留言里的手机号和邮箱全部分离出来,分别复制给不同同事。
我粘贴的文本会上传到服务器吗?
不会。所有匹配都在浏览器本地完成,输入的文本和提取结果都不会离开你的设备。
小提示
- 手机号只认 1[3-9] 开头的 11 位,且用 \b 边界包住——不会把 18 位身份证中间那 11 位误当成手机号。
- 网址正则把句尾的中文标点(。,!?等)挡在门外,所以「访问 www.example.com。」抓到的是 www.example.com 而不是带句号的那段。
- 「数字」类型是「独立数值」口径:前后不紧跟数字、小数点、负号、冒号,所以 2026-10-07、192.168.1.1、09:30 不会被拆成碎片;想捞日期/时间请用对应类型。
- 身份证规则是 17 位数字 + 末位校验位(数字或 X),长度不够的纯数字不会被当身份证捞走。