如何删除带有单个连字符的无效域(开头或结尾或两者)?
要删除的示例域:
.-domain--.com
.-domain-.com
.domain-.com
.--domain.com
.subdomain.-domain.com
失败的尝试:
grep -vP '-\.'
sed 's/^\.-//'
我向那些已经发表评论的人道歉。我不得不重新表述这个问题,因为它是不正确的。谢谢
答案1
任何:
grep -Ev '(^|\.)-|-($|\.)'
grep -Ev '^-|-$|\.-|-\.'
或者,使用 GNU grep:
grep -Pv '(^|\.)-|-($|\.)'
grep -Pv '^-|-$|\.-|-\.'