域名格式怎么验证?域名注册规范详解

要验证一个字符串是否符合域名格式,需满足以下规则:

域名格式验证

  1. 域名结构

    • 由多个标签(Label)组成,标签间用点()分隔。
    • 标签数量至少为1(如 localhost 是有效的)。
    • 标签不能为空(如 .comexample. 无效)。
  2. 标签规则

    域名格式验证

    • 长度:每个标签长度在 1 到 63 个字符之间。
    • 字符集:仅允许字母(a-z, A-Z)、数字(0-9)和连字符(-)。
    • 起始/结束字符:标签不能以连字符开头或结尾(如 -abcabc- 无效)。
  3. 总长度

    整个域名(包括分隔符点)总长度不超过 255 个字符。

    域名格式验证

实现代码(Python)

def is_valid_domain(domain: str) -> bool:
    # 检查总长度
    if len(domain) > 255:
        return False
    # 分割标签
    labels = domain.split('.')
    # 检查标签数量(至少1个)
    if len(labels) == 0:
        return False
    for label in labels:
        n = len(label)
        # 标签长度检查 (1-63)
        if n == 0 or n > 63:
            return False
        # 标签首尾不能是连字符
        if label.startswith('-') or label.endswith('-'):
            return False
        # 字符合法性检查
        for char in label:
            if not (char.isalnum() or char == '-'):
                return False
    return True

测试用例

域名示例 是否有效 原因
"example.com" 符合所有规则
"localhost" 单标签有效
"sub.domain.org" 多标签有效
"a-b.c0m" 允许连字符和数字
空域名无效
".com" 空标签无效
"example..com" 连续点导致空标签
"-invalid.com" 标签以连字符开头
"invalid-.com" 标签以连字符结尾
"in valid.com" 包含空格(非法字符)
"toolonglabel."*64 标签长度超过63字符
"a"*255 总长度等于255有效
"a"*256 总长度超过255无效
"ünicode.com" 非ASCII字符(需IDN编码处理)

关键点说明

  • 国际化域名(IDN):上述代码仅支持ASCII字符,如需支持非ASCII字符(如中文、阿拉伯语),需先将域名转换为Punycode(如 "中国.cn""xn--fiqs8s.cn")再验证。
  • 大小写处理:域名不区分大小写(EXAMPLE.COMexample.com 等价),验证时无需额外转换。
  • 特殊用途域名:如 localhost.test 等保留域名,格式上有效,但实际使用需遵循特定规范。

此方案严格遵循ICANN域名格式标准,可直接用于基础域名格式校验。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/285604.html

(0)
上一篇 2026年2月7日 14:17
下一篇 2026年2月7日 14:27

相关推荐

  • cn99动态域名怎么申请,如何免费申请动态域名

    CN99动态域名申请是解决动态公网IP环境下远程访问难题的高效手段,其核心价值在于通过域名解析服务实现IP地址与域名的实时动态映射,对于缺乏固定公网IP的中小企业、开发者以及个人用户而言,掌握CN99动态域名的申请与配置,能够以极低的成本搭建起稳定、可被外部访问的网络服务,如远程桌面、网站托管、NAS存储及物联……

    2026年3月4日
    01.2K3
  • mom域名备案

    2026年mom域名备案已全面纳入工信部ICP备案管理体系,必须通过国内主机服务商提交主体资质审核,审核周期通常为7-20个工作日,且严禁用于非法医疗营销或无资质诊疗服务,随着数字经济发展进入深水区,域名后缀的选择不再仅仅是品牌标识,更直接关联着搜索引擎权重与合规经营的安全性,对于持有.mom域名(通常关联母婴……

    2026年6月22日
    0484
  • wdcp绑定二级域名怎么操作?wdcp绑定二级域名教程

    在 2026 年基于 WD-Cpanel(wdcp)面板环境中,绑定二级域名的核心结论是:无需额外购买域名,只需在 DNS 解析层添加 A 记录指向服务器 IP,并在面板“网站管理”中创建站点并填入二级域名,即可完成从解析到服务配置的闭环,全程耗时通常不超过 3 分钟,且完全兼容 Nginx/OpenResty……

    2026年5月8日
    01004
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 国内域名后缀排名是多少?cn域名和com哪个搜索流量大

    国内域名后缀排名在当前的中国互联网生态中,”.cn”以绝对优势稳居第一,占据国内域名注册量的半壁江山,是本土企业建立品牌信任的首选;”.com”紧随其后,虽源自国际,但因其全球通用性,依然是跨国业务与高端品牌的核心阵地;而”.com.cn”与”.gov.cn”则分别在中小企业合规备案与政府机构公信力构建中占据不……

    2026年4月26日
    01022

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注