Skip to content

手机号生成

函数名:p_手机号生成 / p_PhoneGen

功能描述

生成符合中国手机号规范的随机号码,前三位从号段库中加密随机选取,支持自定义模板和号段类型选择(含移动、联通、电信、广电、虚拟、物联网、卫星等运营商分类)。

会员等级:🟢 免费版(Free)

语法

excel
=p_PhoneGen(模板, [号段库])

参数

参数名类型必填默认值说明
模板String-定义手机号生成规则,长度必须为 11 位。. 表示随机数字;字母表示相同数字(相同字母映射同一数字);数字将固定不变
号段库String全部指定前三位号段库(逗号分隔)或选择号段类型,默认内置全部号段

返回值

String - 生成的 11 位手机号码字符串。

使用示例

随机生成标准手机号

公式

excel
=p_PhoneGen("...........")

结果(每次结果不同):

13851236478

指定运营商号段

公式

excel
=p_PhoneGen("...........", "移动")

结果(前三位为移动号段,如 134-139、150-152 等):

13912345678

指定固定号段

公式

excel
=p_PhoneGen("...........", "188")

结果(188 开头 + 8 位随机数字):

18876543210

字母映射生成成对数字

公式

excel
=p_PhoneGen("...AABBCCDD", "138")

结果(前三位固定 138,后八位按 AA BB CC DD 成对出现):

13855667788

技术说明

  • 加密级随机:使用 RandomNumberGenerator 加密级随机数生成器,保证号码随机性。
  • 模板规则
    • .:该位为随机数字(0-9)
    • 字母(A-Z):相同字母映射为同一随机数字
    • 数字(0-9):该位固定为该数字
    • 其他字符:非法,返回错误
  • 号段库:前三位强制从号段库中随机选取,模板前三位被覆盖。
    • 单类别:移动联通电信广电虚拟物联网卫星全部
    • 多类别组合:移动,联通电信,虚拟
    • 自定义号段:130,131,132188
  • 卫星号段:号段 1349 为四位,第四位固定为 9。

错误处理

错误场景返回值
号段库参数无效(无匹配号段)错误: 无效的号段库参数
模板长度不为 11 位错误: 模板必须是11位
模板含非法字符错误: 第N位包含非法字符
其他异常错误: 错误信息

基于源代码最新版本文档