DNS域名正则
DNS域名正则是遵循RFC1035规范设计的正则表达式,核心用途是校验域名格式的合法性,广泛应用于网站注册、表单验证、网络安全检测等场景。其设计需覆盖域名的核心规则:仅允许字母、数字和连字符,连字符不能出现在开头或结尾;每个子域名标签长度为1-63字符,顶级域名至少2字符;完整域名总长不超过253字符。
基础正则表达式示例为:^(?=.{1,253}$)(((a-zA-Z0-9)|(a-zA-Z0-9)(a-zA-Z0-9\-)*(a-zA-Z0-9))\.)*((a-zA-Z0-9)|(a-zA-Z0-9)(a-zA-Z0-9\-)*(a-zA-Z0-9))\.(a-zA-Z){2,}$。进阶版本还会支持国际化域名(IDN)的Punycode编码格式(如xn--开头标签),排除IP地址伪装成域名的情况。实际应用中,常结合逻辑判断实现分层校验,提升准确性和可维护性。
基础正则表达式示例为:^(?=.{1,253}$)(((a-zA-Z0-9)|(a-zA-Z0-9)(a-zA-Z0-9\-)*(a-zA-Z0-9))\.)*((a-zA-Z0-9)|(a-zA-Z0-9)(a-zA-Z0-9\-)*(a-zA-Z0-9))\.(a-zA-Z){2,}$。进阶版本还会支持国际化域名(IDN)的Punycode编码格式(如xn--开头标签),排除IP地址伪装成域名的情况。实际应用中,常结合逻辑判断实现分层校验,提升准确性和可维护性。




闽公网安备 35021102000564号