【发布时间】:2016-03-10 00:20:16
【问题描述】:
我正在使用 PHP 开发 DNS 面板,我必须验证没有尾随点的 DNS 记录名称。以下是几个例子:
example.com - match
sub.example.com - match
sub.sub.example.com - match
*.example.com - match
*.sub.example.com - match
sub.*.example.com - no mach
sub*.example.com - no match
*sub.example.com - no match
我目前正在使用这个正则表达式,但问题是它与通配符 (*) 不匹配:
^(?!\-)(?:[a-z\d\-]{0,62}[a-z\d]\.){1,126}(?!\d+)[a-z\d]{1,63}$
我不太擅长格式化正则表达式。实现这一目标的最佳方法是什么?谢谢!
【问题讨论】: