提取数字

提取数字,是指把文本、日志或账单文字里散落的数字全部抓出来,输出成一列干净的数字并给出个数、求和与平均值;在小鹿tools,提取在浏览器本地完成、文本不上传,原文一字不改。小数、负数、千分位 1,234、中文数字 一千二百三十四 等 13 种写法都认,日期 2026-08-10 与 18 位身份证号整体保留不拆散、不丢精度,求和走定点算术,0.1+0.2 精确得 0.3。没提的数字都会写明原因。

拖入 .txt / .csv / .log 文件,点击选择
文本不上传 · 浏览器本地提取 · 也可直接粘贴 · 单文件 ≤ 10 MB

粘进来就能用:默认提取全部数字,日期、IP、手机号按整体保留,网址里的数字自动跳过。原文一个字都不会被改动。

一键预设
要提取哪些数字写法(真实文本里的数字远不止 0-9)
日期、IP、手机号这类结构化数字串怎么处理
哪些位置的数字不提
整理(提取之后 90% 的人还要做的事)

🔒 扫描与统计全部在你的浏览器本地用 JS 完成,文本不上传任何服务器,关闭页面即清除;本地只记住你的 勾选偏好,不保存文本内容。本工具只读不改原文:上面输入框里的文字一个字都不会被改动, 结果是新产生的一份数字清单。求和走定点整数算术,0.1 + 0.2 得到的是精确的 0.3;超过 15 位的长号码 一律按原样字符串保留,绝不转成 JS 数值。

如何使用提取数字

1

粘贴文字,或拖入 .txt / .md / .csv / .log / .json / .srt / .sql 纯文本文件(单文件 10 MB 以内,按 UTF-8 读取)。从 Excel 直接选中单元格复制粘贴也可以。粘完立刻出结果,每种数字写法旁边会实时显示「本文中有 N 个」。

2

选一个预设(提取全部数字 / 金额提取与求和 / 单号编号提取 / 只要整数 / 数值统计 / 中文数字转阿拉伯),或者手动勾选 13 种数字写法。日期、IP、手机号这类结构化数字串有「整体保留 / 拆开 / 跳过」三档,每一档旁边都有 2026-08-10 的常驻示例。还能设去重、排序、区间、每行只取第一个。

3

看统计条与统计卡(个数、求和、平均、最大最小、中位数),再按需要切换输出格式:每行一个、逗号分隔、Excel 求和公式、六列 TSV 或 JSON,然后复制或下载 txt / csv。对结果有疑问就看「被排除的位置」表,每一处没提的数字都写清了原因。

关于提取数字的常见问题

提取数字会上传我的文字吗
不会上传。扫描、识别与统计全部在你的浏览器里用 JavaScript 完成,页面没有任何一次把内容发往服务器的请求,关闭或刷新页面即全部清除。本页也不把文本写进 localStorage,只记住你勾了哪些数字写法这类参数偏好。所以处理账单、聊天记录、客户名单、订单号也可以放心使用,断网状态下同样能用。另外本工具是只读的:输入框里的原文一个字都不会被改动,结果是新产生的一份数字清单。
提取数字能认出哪些数字写法
勾选框一共 13 项:整数 42、小数 3.14、千分位 1,234,567、百分比 50%、科学计数法 1.5e3、分数 3/4、全角数字 123、中文数字 一千二百三十四、大写金额 壹贰叁、罗马数字 Ⅻ、圈号 ①、上下标 ²,再加上第 13 项「结构化数字串」——日期、时间、IP、版本号、手机号、身份证号、长单号、数值区间这八个子类型会被当成一个整体识别。负数没有单独的勾选框,-7 由整数与小数带着负号一起认。每一项都能单独勾选或关闭,页面正文里有完整对照表,勾选框旁边还会实时告诉你本文中各有多少个。其中分数与罗马数字默认关闭,因为 8/10 可能是日期、单个 I 和 X 会误伤英文。
提取数字时 1,234 会被拆成两个吗
不会。千分位是内置形态,1,234,567 会作为一个数 1234567 提取出来,单位「元」也能一并记下。这正是直接用 \d+ 正则最常踩的坑:裸正则还会把 3.14 拆成两个数、把 -5 提成 5、把 2026-08-10 提成三个数、把 192.168.1.1 提成四个数。需要注意的是分组必须正好三位才算千分位,1,23 这种不成立的写法会按 1 和 23 两个数处理,这个口径在实现里定死并有单测钉住。
日期 2026-08-10 提取数字时会被拆散吗
默认不会。日期、时间 12:30、IP 192.168.1.1、版本号 v1.2.3、手机号、身份证号、长单号、区间 3-5 这八类会作为「结构化数字串」整体保留一条,并标出具体是哪一类,同时不参与求和(日期没有数值语义)。如果你确实要统计年月日,把「结构化数字串」切到「拆开」,2026-08-10 就变成 2026、8、10 三条;如果日期只是噪音,切到「跳过」,页面会告诉你跳过了多少处、分别是哪几类。3-5 天这种写法默认判为区间而不是 3 和 -5,也是同一套规则。
提取数字后怎么直接求和不出误差
结果区就有求和、平均、最大、最小、中位数,不用再复制到 Excel。求和用的是定点整数算术:先把所有数按最大小数位缩放成整数、用 BigInt 累加、再插回小数点,所以 0.1 + 0.2 得到的是精确的 0.3,不会出现 0.30000000000000004 这种浮点尾巴,1,234.50 加 2,000 得到的是 3234.50。平均值和中位数涉及除法,页面会明确标上 ≈ 并写清保留了几位小数,绝不把近似值伪装成精确值。日期、IP、手机号和超过 15 位的长号码不参与求和:统计卡有一格专门显示结构化数字串有多少条,长号码有几个则写在结果区上方的提示行里,不会闷着不说。
提取数字时身份证号会不会丢精度
不会。超过 15 位的数字一律按原样字符串保留,绝不转成 JS 数值——转了就会变成 6222021234567890000 这种末尾抹零的结果。19 位银行卡号、18 位身份证号、长订单号都会出现在结果列表里并标上「长号码」,只是不参与求和;排序时也走定点比较而不是转数值比较,所以顺序不会乱。导出 CSV 时对这些列做了防科学计数法处理,用 Excel 打开不会变成 6.22202E+18。用「单号编号提取」预设可以一次配好这套参数。
中文数字一千二百三十四能提取成 1234 吗
可以,中文数字和大写金额数字都是默认勾选的形态。数位读法:一千二百三十四 → 1234、一百零八 → 108、十五 → 15、两百 → 200、廿三 → 23、三千五百六十亿 → 356000000000(内部用 BigInt 累加,不会丢精度)。逐位读法:二〇二六 → 2026、壹贰叁肆 → 1234。另外 1.5万 会展开成 15000。要注意单个的「一」「三」不会被提取,因为「一起」「三思」「不三不四」里的它们不是数字,这是为了准确率有意为之的;只有紧跟量词时(三个人)才会认。
提取数字时网址和代码里的数字会提吗
网址、邮箱、文件路径里的数字默认不提,否则 www.a2b.com 会莫名多出一个 2;HTML 实体 ' 和 m² 这类单位上标也默认排除。代码块与行内代码里的数字默认会提,因为日志和代码里的数字往往正是你要的,需要时可以在「哪些位置的数字不提」里勾上。行首序号 1. 2) 默认也提,勾上对应规则就能去掉列表噪音。最重要的是:被排除的位置都会进「被排除的位置」表,写清行列号、片段和原因,可以逐条核对;超过 500 处时表里逐条记录前 500 处,总处数照样写在标题上——静默漏抽在这里是不允许的。
提取数字能去重排序和按大小筛选吗
能。去重按数值算,1,234 和 1234 视为同一个(不是按原文比字符串);排序按数值大小而不是字典序,结果是 2、10、100 而不是 10、100、2,19 位长号码参与排序时同样走定点比较不会乱序;还能设最小值和最大值区间、只要整数、只要正数,以及「每行只取第一个数字」——粘贴表格或成绩单时这条特别好用。这几步的施加顺序是固定的:先按行取、再按值筛、然后去重、最后排序,被筛掉的每一条也都能在「被排除的位置」里查到。
提取数字和用正则提数字有什么区别
用正则要你自己处理千分位、负号、小数、指数、日期整体性和长数字精度这一堆边界,写对不容易,而且写错了不报错、只是悄悄少几个数。本页把这些做成勾选项,并把每一处「为什么没提」列出来给你看。如果你本来就会写正则、要的是完全自定义的抽取规则,用正则测试更合适;要把数字从原文里删掉或替换掉,用批量查找替换,本工具只读不改原文;只是想按数字大小给整段文本排序,用文本排序。
提取数字和只保留数字是一回事吗
不完全是。搜「只保留数字」「去掉文字只保留数字」的人其实有两种诉求:一种是把数字抽成一列拿去统计、求和、排序,这正是本页做的;另一种是想保住原文的行列排版,只把非数字字符删掉,比如把一列带单位的表格洗成纯数字——那要的是原地替换,用批量查找替换写一条把非数字字符换成空的规则更合适。判断标准很简单:结果还需要保持原来的行结构和顺序,就是替换;结果是一列可以去重、排序、求和的数,就是提取。本工具只读不改,输入框里的原文一个字都不会动。
日志提取数字怎么不让时间戳和 IP 混进来
点「数值统计」预设,它把「结构化数字串」设成了跳过:时间戳 12:30:45、IP 192.168.1.1、版本号 v1.2.3、日期这些整体识别出来的串会被整条跳过,不进结果也不进求和,页面还会告诉你跳过了多少处、分别是哪几类。剩下的就是耗时、状态码、条数这类真正的数值,配上升序排序可以直接看分布。如果端口号或状态码也不想要,用最小值和最大值区间把它们挡在外面;反过来只想看时间戳,就把结构化数字串切回「整体保留」,再看结果清单的「类型」列。
提取数字能识别手机号和身份证吗
能按形状识别:独立的 11 位以 1 开头的数字串会标为手机号,18 位(末位可为 X)或 15 位标为身份证号,16 位以上标为长数字串,整体保留、不拆位、不转数值。但本页不做有效性校验,不判断号段是否真实存在、不算身份证校验位、不做银行卡 Luhn 校验,只负责把它们完整准确地捞出来。需要专门做号码校验请用对应的专用工具,本页的定位是「从非结构化文本里把所有数字捞成一列」。
提取数字免费吗有没有字数限制
完全免费,不用注册、不用下载软件,也不加水印,13 种数字写法、6 个预设、排除清单、精确求和这些功能都不分免费版付费版。原因很实在:提取全部由你自己的浏览器算完,站点不承担计算成本。限制只来自浏览器性能:建议单个文件 10 MB、单次 500 万字以内,超过 20 万字后不再边打边出结果,改成点「开始提取」再分片计算,带进度、可以随时取消,触到上限时页面会明确写出已处理到哪里,不会静默丢内容。结果清单默认展开前 20 条、结果框最多渲染前 5000 行,点「展开全部」或直接复制、下载拿到的都是完整数据。
提取数字支持哪些文件格式
可以直接拖入 .txt、.md、.csv、.log、.json、.srt、.sql 这七种纯文本文件,单个 10 MB 以内,一律按 UTF-8 读取;如果拖进来的是 GBK 编码或改了扩展名的二进制文件,页面会直接提示「该文件不是 UTF-8 纯文本,请另存为 UTF-8 后重试」,而不是给你一堆乱码数字。Word、Excel、PDF 不能直接拖,正确做法是打开文件、选中内容复制,再粘到输入框里——从 Excel 复制过来的单元格会带制表符,行列关系仍然在,配合「每行只取第一个」就能一列一列地取。粘贴这条路没有文件格式限制,只受 500 万字上限约束。
提取数字结果怎么导出到 Excel
有多种输出格式:每行一个数字、逗号或空格或自定义分隔、六列 TSV(值、原文、类型、单位、行列位置、上下文,可直接粘进 Excel 自动分列)、JSON 数组,以及 =1234.5+2000+3 这样的 Excel 求和公式串(公式过长会截断并告诉你省略了多少项)。也可以直接下载 UTF-8 带 BOM 的 txt 或 csv,用 Excel 或记事本打开都不乱码,长号码列做了防科学计数法处理。导出的 CSV 还能接着用 CSV 转 Excel 做透视表。
手机上能用提取数字工具吗
能,用手机浏览器打开本页粘贴文字就能提,不用装 App、不用注册,提取同样在手机本地完成、文字不上传。移动端做过适配:6 个预设按钮会自动换行排开,13 个数字写法勾选框与统计卡在窄屏下一行一项铺满、标签在上控件在下互不挤压,结果清单与被排除清单可以横向滚动看完各列,两个文本框纵向堆叠。从微信、短信、备忘录里复制过来的账单和订单文字,正好用「金额提取与求和」预设一次算出总额。

提取数字支持哪些数字写法:13 种形态完整对照表

下面这张表和页面的提取实现共用同一份数据,看到什么就一定按什么提。 每一种形态都能单独勾选或关闭,关掉之后文本里的这类数字会进入「被排除的位置」表并写明 「该数字形态未勾选」,而不是悄悄消失。

形态例子提取结果识别说明默认
整数共 42 个42连续的阿拉伯数字,可带正负号✔ 勾选
小数温度 -7.5 度-7.5带小数点的数,支持 .5 这种省略整数部分的写法✔ 勾选
千分位总额 1,234,567 元1234567每三位一个逗号(或窄空格)的写法,整体算一个数而不是拆成三个✔ 勾选
百分比增长 50%50% % ‰ ‱ 会记进单位列,可选换算成小数✔ 勾选
科学计数法1.5e31500e / E / ×10^ 三种写法,一律展开成完整十进制✔ 勾选
分数3/4 杯0.75斜杠分数,除不尽的按 10 位小数近似并标记开启后 3/4 会按 0.75 提取,日期 8/10 和路径 a/b 也可能被误认成分数✘ 关闭
全角数字123.5123.50-9 与全角小数点,按半角数值提取(原文不改动)✔ 勾选
中文数字一千二百三十四1234数位读法与逐位读法都认;单个「一」「三」不提取,避免把「一起」「三思」当成数字✔ 勾选
大写金额数字陆万柒仟67000壹贰叁肆伍陆柒捌玖拾佰仟萬亿,合同与发票里的写法✔ 勾选
罗马数字12Ⅰ-Ⅻ 等 Unicode 罗马数字,以及 XIV 这类两位以上的合法 ASCII 写法开启后英文里的 II、XX、CD 等字母组合可能被当成罗马数字(单个字母永不认)✘ 关闭
圈号与带括号数字①②③1① ⑴ ⒈ ㉑ ㊿ ⓪ 等带圈、带括号、带点的序号✔ 勾选
上下标数字脚注 ²2⁰¹²³⁴⁵⁶⁷⁸⁹ 与 ₀-₉;紧跟在字母后的 m² 默认按单位排除✔ 勾选
结构化数字串2026-08-102026-08-10日期、时间、IP、版本号、手机号、身份证号、长单号、区间——整体保留一条,不拆散✔ 勾选

结构化数字串的 8 个子类型:为什么它们不该被拆开

这八类数字串的每一段单独拿出来都没有意义——日期的 08 不是数量、IP 的 168 不是金额。 它们默认整体保留一条并标出子类型,也不参与求和。本页只按形状归类,不做有效性校验:不判断手机号段是否真实存在、 不算身份证校验位、不做银行卡 Luhn 校验。 要的就是里面的号码而不是数字,请用提取手机号——那边判号段运营商、配对姓名、按 E.164 去重,还会把身份证、银行卡、订单号里凑出来的 11 位挡在门外,而本页恰恰会把这些长号码原样保留成一条。

子类型例子形状
日期2026-08-10年-月-日 / 年/月/日 / 年.月.日 / 2026年8月10日
时间12:30:45时:分 / 时:分:秒 / 时:分:秒.毫秒
IP 地址192.168.1.1四段 0-255 用点连接
版本号v1.2.3v 前缀,或三段及以上的点分数字
手机号13800138000独立的 11 位纯数字且首位是 1(不校验号段)
身份证号110101199003074516独立的 18 位(末位可为 X)或 15 位(不算校验位)
长数字串6222021234567890123独立的 16 位以上纯数字,银行卡号与订单号
数值区间3-5 天数字-数字 / 数字~数字,整体一条而不是 3 和 -5

提取数字的五条排除规则:哪些位置默认不提

规则例子默认关掉的后果
网址、邮箱与文件路径www.a2b.com/v2、api/v2/list、C:\log\1.txt✔ 开启关掉后网址和文件路径里的数字也会被提出来(www.a2b.com 会多出一个 2)
代码块与行内代码`const a = 1;`✘ 关闭默认就是会提,勾上后才不提
行首序号1. 第一条✘ 关闭默认就是会提,勾上后才不提
单位里的上下标m²、km³、CO₂✔ 开启关掉后 m² 的 2、CO₂ 的 2 也会被提取
HTML 实体'✔ 开启关掉后 HTML 实体 ' 里的 39 也会被提取

无论因为哪条规则、哪个未勾选的形态、还是哪个筛选条件而没提, 页面都会在「被排除的位置」表里列出行列号、原文片段和人话原因 (超过 500 处时逐条记录前 500 处,总处数如实写在表头上)。 这张表默认就是展开的,因为静默漏抽等于工具坏了—— 用户抱怨「我的中文数字怎么没提出来」时,答案必须在页面上。

提取小数和负数、千分位、百分比分别怎么勾

这几种形态之间会互相牵动,勾之前值得先看一眼,最容易悄悄丢数的就是它们:

  • 提取小数和负数没有单独的开关3.14-7.5 都归「小数」,负号跟着数一起认,没有「负数」那一格。关掉「小数」之后 3.14 不会退成 3 和 14, 而是整条进「被排除的位置」并写明「小数未勾选」——这一点和裸正则的行为正好相反。
  • 提取千分位数字要求分组正好三位1,234,567 认,1,23 不认(按 123 两个数处理)。
  • 提取百分比数字默认只记单位、不换算50% 的值就是 50、 单位列记 %;要拿到 0.5 就打开百分比换算开关,换算后单位列会标明。
  • 提取科学计数法认三种写法1.5e31.5E31.5×10^3 一律展开成 1500;指数绝对值超过 1000 的(比如 1e2000)直接跳过并写进被排除清单, 理由写的是「科学计数法指数超过 1000,已跳过」,不会产生 Infinity 污染统计。
  • 要提取日期不拆开,「结构化数字串」保持默认的「整体保留」就行, 不用另外配;只有切到「拆开」,2026-08-10 才会变成 2026、8、10 三条。

为什么不能直接用 \d+ 提取数字

很多人第一反应是拿 \d+ 在编辑器里全局匹配,或者用批量查找替换把非数字删掉。 问题是真实文本里的数字几乎从不是「一串连续的 0-9」,下面十条是最常见的翻车现场:

原文\d+ 的结果本工具的结果
1,2341、234(拆成两个数)1234(千分位是内置形态)
3.143、14(小数点被当分隔符)3.14
-55(负号丢了)-5(且 A-7 里的横线不会被当负号)
2026-08-102026、8、10(日期被拆成三个数)2026-08-10 整体一条,标为日期
192.168.1.1192、168、1、1(四个数)192.168.1.1 整体一条,标为 IP
1.5e31、5、3(指数被拆碎)1500
50%50(单位丢了,也无法换算)50,单位记为 %,可选按 0.5 输出
多出一个 2默认按单位排除,并在「被排除的位置」里列出来
www.a2b.com莫名多出一个 2网址整串跳过,可一键关闭该规则
1234567890123456789012345678901234567000(转数值就丢精度)原样字符串保留,标为长号码,不参与求和

这些坑最麻烦的地方不是难修,而是修错了不会报错: 正则照样跑完、照样吐出一列数字,只是那列数字多了几个、少了几个、或者精度悄悄变了, 等到发现总额对不上时已经不知道错在哪一步。本页把这些判断做成勾选项, 并把每一处「为什么没提」都摆出来,让结果可以逐条核对。

一个具体的例子:A-7 里的横线不是负号(前一个字符是字母),提出来是7;行首的 -7 是负号,提出来是 -73-5 天 两侧都是数字且中间没有空格,判为区间整体保留而不是 3 和 -5。 这三条规则用一个正则很难同时写对,本页把它们固化成一条判定: 只有紧邻的前一个字符不是字母、数字或右括号时,- 才算负号。

如果你本来就会写正则、要的是完全自定义的抽取规则,正则测试更合适; 要把数字从原文里删掉或替换成别的内容,用批量查找替换—— 本工具只读不改原文,永远不做回写。要的不是数字而是那段文本里的网址,用提取链接—— 那边把网址当结果提取,这边把网址当噪音排除,两边对「哪一段是网址」的口径由交叉测试守着。 要的是报名表、抄送列表里的邮箱地址,用提取邮箱—— 本页会把 a@b.com 里的数字当噪音排除掉,那边则把整条地址提出来并配上姓名。

提取数字之后怎么求和才不出错

提取只是第一步,绝大多数人接下来要做的是把这些数字加起来。 这一步有两个几乎人人都会踩的坑,本页都在实现层面解决了。

提取数字求和算例:一段账单为什么合计 1272.50

把这一行原样粘进输入框(保持默认参数):午餐 ¥38.50,打车 ¥1,234,日期 2026-08-10,订单号 6222021234567890123,结果是 4 条:38.50(小数,单位 ¥)、1234(千分位,单位 ¥)、2026-08-10(结构化数字串·日期)、6222021234567890123(结构化数字串·长数字串)。参与求和的只有前两条,合计 1,272.50、平均 ≈636.25;日期没有数值语义、19 位订单号超出双精度安全位数, 两条都整体保留在结果列表里但不进总额,统计条会写明「另有 2 处结构化数字串按整体保留」。 换成裸 \d+ 去匹配,这行会被提成 38、50、1、234、2026、08、10 加一串被截断的订单号, 总额自然对不上。

提取数字求和时 0.1 + 0.2 为什么不等于 0.3

JavaScript(以及几乎所有用二进制浮点的语言)里 0.1 + 0.2 的结果是 0.30000000000000004,因为 0.1 在二进制里是无限循环小数。 几百笔金额一路加下来,尾巴就会冒到小数点后第二位,和财务对账对不上。 本页的做法是不碰浮点:每个数以十进制字符串为唯一真相, 求和时先取出最大小数位数 d,把所有数缩放成整数用 BigInt 累加,再按 d 插回小数点。 所以 0.10.2 得到的是精确的 0.31,234.502,000 得到的是 3234.50

身份证号提取不变科学计数法要怎么设置

不用设置,默认就是这样:要提取长数字不丢精度,唯一可靠的办法是全程不转数值。 双精度浮点只能精确表示 15~16 位有效数字,Number("12345678901234567890") 会变成 12345678901234567000,末尾几位直接被抹掉,而且不会有任何报错。 本页对超过 15 位的数字一律按原样字符串保留、不转数值, 它们仍然出现在结果列表里(标着「长号码」),只是不参与求和; 排序时也走定点比较而不是转数值比较,所以 19 位号码的顺序不会乱。 导出 CSV 时这些值会写成 ="6222021234567890123" 的形式钉成文本, 用 Excel 打开不会变成科学计数法。

提取数字后哪些条目不参与求和,为什么

  • 结构化数字串(整体保留档):日期、时间、IP、版本号、手机号、身份证号 没有数值语义,把 2026-08-10 加进总额毫无意义。
  • 「单号编号提取」预设下的全部条目:这个预设明确关闭了数值转换, 要的就是原样字符串。
  • 超过 15 位的长号码:理由见上一段。
  • 指数绝对值超过 1000 的科学计数法:直接跳过并计入被排除清单, 绝不产生 Infinity 污染统计。

提取数字的平均值和中位数为什么标 ≈

平均值和中位数都涉及除法,除不尽时只能保留有限位小数(本页按定点多保留两位并四舍五入)。 这时页面会在数字前挂一个 并写清保留了几位,绝不把近似值伪装成精确值。同理,开启分数形态后 1/3 会按 10 位小数记成 0.3333333333 并标为近似, 只要参与求和的数里有一个近似值,统计卡的「求和」也会注明「含近似值」。 而 3/4 这种除得尽的分数是精确的 0.75,不会被标近似。

提取数字后怎么统计个数、求和、排序、去重

提取只是第一步。提取之后的整理被固定成四步,先按行取 → 再按值筛 → 然后去重 → 最后排序,顺序是规范的一部分。 顺序不能换:先去重再按行取,重复行里本该保留的那一条会被跨行吃掉, 结果少几条却不会报错。被这四步筛掉的每一条,同样会进「被排除的位置」并写明是哪一步筛的。

提取数字并统计个数时,统计卡上四个数在数什么

统计卡里和「个数」有关的格子有四个,含义完全不同,对不上账时先确认没看错格:提取到是结果清单里的总条数;去重后是按数值去重之后还剩几条;结构化是其中有多少条是日期、IP、长号码这类整体保留、不参与求和的条目;被排除是因为形态没勾、位置被排除或区间筛掉而根本没进清单的处数。 一段真实账单里这四个数很少相等,怀疑总额不对时先看这四格,问题多半就在里面。

提取数字并求和与提取数字后求平均值分别按什么口径

求和只把能转成数值的条目算进去,走定点整数算术,给出的是精确值; 提取数字后求平均值则是求和除以参与求和的条数(不是「提取到」那个数), 除不尽时会挂 并写清保留了几位。想一步拿到总额,点「金额提取与求和」预设—— 很多人搜的「提取数字求和工具」「提取金额求和」说的就是这一步, 结果区直接给数,不必再复制到表格里拉一遍公式。

提取数字后排序和提取数字去重是按数值还是按原文

两个都按数值,不按原文字符串。提取数字后排序给出的是 2、10、100, 而不是字典序的 10、100、2;19 位长号码不转数值,排序时走定点比较,顺序同样不会乱。 提取数字去重也按数值:1,2341234 算同一个,¥38.5038.5 也算同一个。 如果你要的恰恰是「原文写法不同就算两条」,那就别开去重, 改用六列 TSV 导出,在表格里按「原文」列自己判断。

中文数字识别规则:一千二百三十四怎么变成 1234

中文数字有两种完全不同的读法,本页按串本身自动判定,并在结果清单的「类型」列标出来:

本页做的是中文数字转阿拉伯数字的识别与取值:结果清单的 「原文 → 值」两列就是转换结果,可以直接复制走。大写金额转数字走的是同一套规则,陆万柒仟 取到的值是 67000,形态列标「大写金额数字」。 如果要的是把整篇文章里的中文数字就地改写成阿拉伯数字、原文其余部分一字不动, 那是另一件事,见本节末尾的说明。

  • 数位读法(串里含十、百、千、万、亿任一):按「小节累加 + 万/亿进位」计算。一千二百三十四 = 1000 + 200 + 30 + 4。
  • 逐位读法(全是数字字、没有数位字):一个字一位直接拼起来。二〇二六 = 2026。
原文提取结果规则
一千二百三十四1234数位读法:含十百千万亿,按小节累加 + 万/亿进位
一百零八108「零」在数位读法里是占位符
十五15「十」前面没有数字时按 1 算
两百200「两」等同于「二」
廿三23廿卅卌 是 20/30/40 的合写
三千五百六十亿356000000000超过双精度安全整数,内部走 BigInt 累加
二〇二六2026逐位读法:全是数字字、没有数位字
陆万柒仟67000大写金额数字,归入「大写金额数字」形态
三十多人30「多」不是数字,不参与解析
一起 / 三思 / 不三不四不提取单个中文数字字在汉语里绝大多数不是数字
一一对应不提取两个相同数字字不走逐位读法,避免把词读成 11
1.5万15000阿拉伯数字后紧跟的万/亿/千按倍率展开

为什么单个「一」「三」不当中文数字提取

因为在汉语里它们绝大多数时候不是数字:一起、一定、一般、三思、 不三不四、十分、万一……如果见字就提,一篇正常的中文文章能被提出几百个假数字, 这个工具也就没法用了。所以规则定成:单个中文数字字默认不提取, 只有紧跟量词时(三个人一台电脑)才认; 而一整串中文数字字如果解析不成合法数字(一一对应万一), 整串跳过,不会退回去逐字重试。这是本工具准确率的生死线,宁可少提也不乱提。

1.5万提取数字时算 15000 还是只记单位

在中文数字串里,亿 是数位:陆万柒仟 = 67000,此时它们被数值本身吃掉,不会再记成单位。 跟在阿拉伯数字后面时按倍率展开:1.5万 = 15000、3千 = 3000、2亿 = 200000000。而 3.5kg 这类只记单位不做换算,50% 默认也只记单位 %、不换算成 0.5(需要的话有一个开关)。 要把整篇文本里的全角数字转成半角,请用全角半角转换—— 本页遇到 123 会按 123 识别提取,但不输出转换后的原文。 识别之后还要把原文里的数字改写成中文(或把中文数字改回阿拉伯数字),用 中文数字互转—— 它的整篇替换复用本页这套定位规则,网址、代码、日期、手机号照样原样不动。

日志、聊天记录、账单文字提取数字有什么不同

材料不同,混进来的噪音数字也完全不同:日志里最多的是时间戳和 IP, 聊天记录里是昵称和消息时间,账单里则是千分位与货币符号。 与其提完再逐条删,不如一开始就按来源把预设选对。

要做的事最常混进来的噪音建议参数
从服务器日志提取数字时间戳 12:30:45、IP 192.168.1.1、端口 8080、版本号 v1.2.3「数值统计」预设(结构化数字串设为跳过),只留耗时、状态码这类真数值
微信聊天记录提取数字昵称里的数字、每条消息前的时间、引用块里的编号在「哪些位置的数字不提」里勾上「行首序号」;要算钱再切「金额提取与求和」
账单文字提取金额并合计千分位 1,234、货币符号 ¥$€、开票日期、卡号后四位「金额提取与求和」预设;货币符号进结果的「单位」列,不影响求和
从 txt 提取数字(log、csv 同理)文件不是 UTF-8 时整篇读成乱码,乱码里还能凑出假数字直接拖进来,一律按 UTF-8 读取;编码不对会明确报错,而不是给你乱码数字
订单短信里提取订单号19 位单号转成数值后末尾被抹零「单号编号提取」预设,全程不转数值,导出时把这列钉成文本
成绩单提取分数、表格粘贴取值学号、班级号跟着分数一起被求和「每行只取第一个」,再用最小值/最大值区间把学号那种大数挡在外面
代码字符串中提取数字端口、超时毫秒数、版本号、颜色值里的数字代码块里的数字默认就提;不想要就在排除规则里勾上「代码块与行内代码」

不管哪种来源,都建议先只粘前几行试一遍、对着「被排除的位置」确认口径对不对, 再把整份文本粘进来。参数偏好会记在本机,下次打开还是这一套,不用重新勾。

提取数字一般用来做什么:6 个真实场景

  • 聊天记录、账单文字里提金额并求和把微信聊天记录或账单文字整段粘进来,点「金额提取与求和」预设:只留数值形态、捕获 ¥$€元 单位、日期自动跳过,结果区直接给出精确总额。求和走定点整数算术,几百笔小数金额加起来也不会冒出 0.30000000000000004 这种尾巴。
  • 日志里提耗时、分数做分布分析点「数值统计」预设,全数值形态 + 结构化数字串跳过 + 升序排序,统计卡一次给出个数、求和、平均、最大、最小、中位数与去重后个数。时间戳与 IP 不会混进来当数字,1 MB 的单行日志也不会卡死。
  • 订单短信、快递单提单号(保精度)点「单号编号提取」预设:结构化数字串整体保留、完全不转数值,18 位身份证号、19 位银行卡号、长订单号原样输出。导出 CSV 时还做了防科学计数法处理,用 Excel 打开不会变成 6.22202E+18。
  • 试卷、成绩单提分数粘贴成绩单后把「每行取」设成「第一个」或「第 N 个」,一行一个分数干净地取出来,再切到升序排序看分布。学号那种长数字串会被识别成结构化数字串,不会混进分数里参与求和。
  • 合同、公文里的中文数字批量转写点「中文数字转阿拉伯」预设,只保留中文数字与大写金额数字,结果清单的「原文 → 值」两列可以直接复制走。壹贰叁肆、陆万柒仟、一千二百三十四、二〇二六 都能认。
  • 提取后导出 CSV 接着处理输出格式切到「六列 TSV」可以直接粘进 Excel 分列(值、原文、类型、单位、行列位置、上下文),或者下载 UTF-8 带 BOM 的 CSV,再用 CSV 转 Excel 继续做透视和图表。

需要按数字大小给整段文本排序(而不是把数字抽出来)请用文本排序;只想知道有多少字多少段用在线字数统计;顺手做去重、大小写、去空行用文本处理工具箱; 提取结果导出后继续做表用 CSV 转 Excel; 抽出来的是金额、还要写进支票或合同的大写栏,用数字转大写金额把 1234.56 转成 「人民币壹仟贰佰叁拾肆元伍角陆分」——本页只负责把数字挑出来,不管怎么写。

提取数字的 6 个一键预设分别提什么

六个预设用同一个示例串横向对比,点一下就是整套参数(形态勾选 + 结构化档位 + 排除规则 + 整理选项),点完之后照样可以手动改任意一项,改了就变成「自定义」。

预设做什么示例典型场景
提取全部数字全形态(分数与罗马数字除外)+ 结构化整体保留 + 跳过网址 + 原顺序输出订单 2026-08-10 共 ¥1,234.50,退 3 件2026-08-10、1234.50、3通用抽取,不知道选什么就用它
金额提取与求和只留数值形态并捕获 ¥$€元 单位,结构化数字串跳过,输出精确求和订单 2026-08-10 共 ¥1,234.50,退 3 件1234.50、3从聊天记录、账单、发票文字里算总额
单号编号提取结构化整体保留并关闭数值转换,原样字符串输出,绝不丢精度订单 2026-08-10 共 ¥1,234.50,退 3 件2026-08-10、3提订单号、快递单号、身份证号、银行卡号
只要整数只勾整数、全角数字、中文数字与圈号,结构化数字串跳过订单 2026-08-10 共 ¥1,234.50,退 3 件3提数量、页码、编号
数值统计全数值形态 + 结构化跳过 + 升序排序 + 完整统计卡订单 2026-08-10 共 ¥1,234.50,退 3 件3、1234.50从日志里提耗时、分数做分布分析
中文数字转阿拉伯只勾中文数字与大写金额数字,输出「原文 → 数值」两列合计壹万贰仟元整,另付三百五十元12000、350合同、公文里的中文数字批量转写

这样设计是因为真实需求从来不是「把所有数字都提出来」这一种, 而是「只要金额、日期别混进来」「只要单号、一位都不能错」「只要整数、序号不算」 这类带条件的组合。

提取数字的几种常见说法分别指什么

同一件事有十几种说法,指向的做法却不完全一样:有人要的是一列干净数字, 有人要的其实是一段被删干净的原文。下面把常见说法对应到本页的具体操作, 也顺便标出哪几种该去别的工具。

常见说法多半是想做什么在本页怎么做
在线提取数字、提取数字在线不想装软件,打开网页就能用本页就是:粘贴即出结果,不用注册不用下载,页面加载完之后断网也能继续用
从文字中提取数字、怎么从文字里提取数字手上有一段中文,要把里面的数拿出来默认的「提取全部数字」预设直接用;留意日期、手机号默认是整体保留成一条
一段文字提取所有数字、从文本中提取所有数字、把文字里的数字都提出来要的是一个都不漏把「结构化数字串」切到「拆开」,再把默认关闭的分数与罗马数字也勾上
只保留数字、去掉文字只保留数字两种诉求:抽成一列,或者把原文里的非数字删掉要一列数字用本页;要保留原有行列排版只删非数字字符,该用批量查找替换
抓取数字多半是想从某个网页上抓本页不联网抓取:先在网页里复制正文再粘进来;只要网址本身请用提取链接
数字提取器、文本提取数字工具本身的叫法指的就是本页;别和「号码提取器」混了,那类工具只认手机号这一种形状
批量提取数字一次处理很多行、很多条整份文本一次粘完算完(单次 500 万字以内),逐行取值配「每行只取第一个」
提取数字不用写正则、正则提取数字怎么写两类人:一类不想写,一类想写对不想写就勾选项;想写对可以拿本页结果当对照答案,再去正则测试调你的表达式

英文资料里这件事叫 extract numbers from text,口语一点的说法是 pull all numbers out of text,在线工具多半叫 number extractor online,要连着算总额则是 extract and sum numbers online。有一点值得留意:英文工具大多只匹配「连续的 0-9 加一个可选小数点」这一种形态, 中文数字、大写金额、全角数字、廿卅这些写法基本会被整段漏掉, 拿来处理中文材料时提出来的条数会比本页少一截,而且少掉的部分不会有任何提示。