gpt4 book ai didi

php - 带有国家代码检查的电话号码的正则表达式 (RegEx)

转载 作者:可可西里 更新时间:2023-11-01 13:51:22 27 4
gpt4 key购买 nike

我需要一个 PHP RegEx,通过它我可以使用以下标准验证电话号码格式:

  • 不应包含数字以外的任何内容;
  • 不应以零开头,因为我需要在国家代码前加上前缀;
  • RegEx 中应包含允许的国家/地区代码列表;
  • 国家代码后的数字不能为零;
  • 号码的最大长度不应超过 13 位。

在发布此问题之前,我曾尝试在 Stack Overflow 上进行搜索,但找不到确切的解决方案。任何帮助将不胜感激。

编辑:我只希望用户以有效格式 输入电话号码,因为目前我的客户在编写电话号码时会犯一些愚蠢的格式错误。我不担心它实际上有效(可调用),因为用户会自己处理。

问候

最佳答案

我不会为此伤到手指。

您无法仅通过查看电话号码来判断它是否有效,即使它“看起来”有效,也可能不是您要查找的电话号码(即其他人的电话号码)。

您试图在错误的层次上解决问题。验证电话号码的唯一方法是实际调用它;)

满足您标准的正则表达式:

/^(1|20|21|..etc)[1-9][0-9]+$/

国家代码列表(由 | 分隔)后跟一个不为 0 的数字,后跟任何数字任意次数。

您不能在一个正则表达式中进行 13 长度检查和国家/地区检查,因为国家/地区代码的长度各不相同(至少据我所知)。您可以通过通用正则表达式进行 13 长度检查,例如:

/^.{,13}$/

匹配最多 13 个字符的内容

关于php - 带有国家代码检查的电话号码的正则表达式 (RegEx),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5777375/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com