创建regex电话号码,验证除一种格式外的所有号码

本文关键字:格式 一种 号码 电话号码 regex 验证 创建 | 更新日期: 2023-09-27 17:50:27

我有一个授权所有电话号码的正则表达式,格式为:

0nxxxxxxxx with n between 1-9 and 8 times x between 0-9

我的正则表达式是

0[1-9][0-9]{8}

现在,我想排除以0590xxxxxx开头的数字。例如

0123456789 => true
...        => true
0590123456 => false

如何修改我的正则表达式来做到这一点?

创建regex电话号码,验证除一种格式外的所有号码

只需在pattern前添加负前瞻(?!0590):

(?!0590)0[1-9][0-9]{8}

参见RegexStorm Demo

改进:

  • 我建议你使用开始^和结束$锚,如果你想避免匹配,如abc0123456789abc或使用字边界'b
  • 可以用'd代替[0-9]

改进的正则表达式:

^(?!0590)0[1-9]'d{8}$