跳到内容

📱 电话号码格式化 (按国家)

支持 30+ 国家的电话号码格式化。一键生成国际、国内、E.164、tel: URI 格式。位数与国家代码验证,批量处理,CSV 导出。

完全免费 无需注册 浏览器内完成 5 种语言 深色模式

🔒 关于隐私

📖 常见的坑

依据三十多个国家的分组规则整理电话号码,同时给出国际格式、国内格式、E.164 与 tel: URI 四种形式。也支持每行一条的批量处理与 CSV 导出,处理全部在浏览器内完成。这里做的是格式整理,而非号码是否真实存在的验证——未分配的号段、已注销的号码、完全虚构的号码,只要位数对得上,都会被同样漂亮地格式化

情形 会发生什么 怎么处理
开头的 0 消失了,或者多了一个 国内格式开头的那个 0 是所谓的「国内前缀」,并不属于号码本身——它只是在国内拨号时才加的记号。因此转成国际格式时要去掉,090-1234-5678 变成 +81 90 1234 5678反方向忘了去掉,就会造出 +81 090... 这种不存在的号码。实务中损失最大的是 Excel 与 CSV打开 0312345678 会被判定为数字,开头的 0 就此消失,变成 312345678——而且一旦这样保存就再也找不回来了。 存储的值请统一为 E.164(+819012345678——它包含国家代码、不含分隔符,是全球唯一确定的唯一形式。只在展示时才整理为国内格式。处理 CSV 时,请在打开前把列类型指定为「文本」——在 Excel 中,从「数据」选项卡使用文本导入向导,把该列设为文本。双击打开必定会坏。E.164 以 + 开头,Excel 不会当成数字,但与其指望这一点,不如显式按文本导入更可靠
固定电话的分组位置不对 日本的区号从 1 位到 4 位不等——东京是 03,横滨是 045,新潟县部分地区甚至有 02567 这样的 5 位区号。断在哪里由总务省的号码计划逐个规定,无法从位数推导。而且区号越长、局号越短,因此总位数相同的两个号码,断点却不同。手机(070/080/090)与 IP 电话(050)格式固定所以简单,但要完美切分固定电话,需要整份号码计划作为数据 不要指望固定电话的分组做到完美。断点位置本来就只是「好不好读」的问题,与能否拨通毫无关系——031234567803-1234-5678 是同一个号码,都能正常接通。因此请把 E.164 原样放进 tel: URI 与数据库,把分隔符仅当作展示层的修饰。若业务上确实需要精确分组(发票、正式文书),请使用 Google 的 libphonenumber——它内置了号码计划数据,与本工具完全不是一个量级。
不存在的号码也照样被整理得很漂亮 格式检查只判断「按该国规则,位数与开头是否可能」。因此尚未分配的号段、早已注销的号码、影视剧里使用的虚构号码,看起来全都有效。在表单里把它当作「已验证」很危险:你只有在发出短信验证码之后,才知道根本送不达。反方向的失败同样存在——过于严格的校验会挡掉新开的号段、国际号码、带分机的号码,把正当用户拒之门外 验证是否真实存在,唯一的办法就是真的发一条短信或打一通电话。表单校验请刻意放宽——只允许数字、+ 与分隔符,再看一下 E.164 的 15 位上限也就够了。被你挡掉的正当号码,是你永远看不见的损失;而被你放行的无效号码,会在下一环节被可靠地识别出来——这种不对称正是应当放宽的理由。关于国际化还要注意:光看国家代码定不了国家——+1 覆盖美国、加拿大与二十多个加勒比国家,+7 由俄罗斯与哈萨克斯坦共用。

电话号码单凭它自己就可能识别出个人,因此需要相应的谨慎:不要写进访问日志与应用日志;不要放进 URL 的查询串(会留在历史记录、Referer 和代理日志里);不要把 CSV 直接作为邮件附件发送。本页的处理全部在浏览器内完成,号码不会被传输;但从你把批量结果下载为 CSV 的那一刻起,如何保管就成了你自己的问题——客户电话清单长期留在 Downloads 文件夹里,是相当常见的事故。另外:E.164 的上限是 15 位(含国家代码),而分机号并不包含在其中——tel: URI 用 +81312345678;ext=1234 这样的 ;ext= 来表示。把分机用连字符接在主号码后面混作一体,会得到一个拨不出去的号码

📖 使用方法

  1. 1
    选择国家
    从 30+ 国家中选择,每个国家位数和分组规则不同。
  2. 2
    输入号码
    单个模式实时转换,批量模式点击按钮处理。
  3. 3
    复制或导出 CSV
    获取 4 种格式,可一键导出 CSV。

❓ 常见问题

什么是 E.164?
ITU-T 国际电话标准格式 (如 +819012345678),最多 15 位。
为什么不用 libphonenumber?
libphonenumber-js 约 70KB,本工具用手写正则覆盖 30+ 国家以保持轻量。
号码会发送到服务器吗?
不会。所有处理均在浏览器中完成。

🔗 相关工具

🐛 此工具出现问题了吗?

免费、无需注册。仅提供复现步骤也有帮助。报告将直接发送给运营者并用于改进。

※ 为复现问题,浏览器信息 (UA / 屏幕 / 语言 / URL) 将自动发送