https://stackoverflow.com/questions/3012546
题
我需要想出一个正则表达式来验证主机名RFC-1123 和 RFC-952.
现在我正在使用这个:
^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|\b-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|\b-){0,61}[0-9A-Za-z])?)*\.?$/
但这并不能解决问题,因为它没有捕获 a. 作为无效主机名。
a.
如何增强 reg 表达式以符合这些 RFC?
谢谢
解决方案
正则表达式::常见 包含一个 正则表达式 匹配 RFC-1035, ,这够好吗?
其他提示
我发现 数据::验证::域 在 CPAN.
我还没有尝试过这个,但它看起来很有希望(有积极的评论等)。