问题描述
如果任何域名都是点号分隔的标识符列表,则每个域名(在语法上)均有效,每个标识符不能超过63个字符,并且由字母,数字和破折号组成(无下划线)。
所以:
r'[a-zA-Z\d-]{,63}(\.[a-zA-Z\d-]{,63})*'
将是一个开始。当然,这些天可能允许使用一些非Ascii字符(这是最近的发展),这会大大改变参数-您需要处理这些吗?
解决方法
我正在使用python,并希望使用简单的api或regex来检查域名的有效性。通过有效性,我是语法上的有效性,而不是域名实际上是否存在于Internet上。