手机号生成
函数名: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,132或188
- 单类别:
- 卫星号段:号段 1349 为四位,第四位固定为 9。
错误处理
| 错误场景 | 返回值 |
|---|---|
| 号段库参数无效(无匹配号段) | 错误: 无效的号段库参数 |
| 模板长度不为 11 位 | 错误: 模板必须是11位 |
| 模板含非法字符 | 错误: 第N位包含非法字符 |
| 其他异常 | 错误: 错误信息 |