正则表达式删除子域名

时间:2015-01-30 13:14:05

标签: regex

我还没能找到一个正则表达式来解决我的问题。我需要能够在正则表达式中定义TLD,例如TLD是" .co.uk"。我希望正则表达式删除所有子域名但保留domain.co.uk。 E.g。

subdomain1.subdomain2.subdomain3.domain.co.uk
111.222.333.444.domain.co.uk

因此,在上述两个示例中,基本上都要保留" domain.co.uk"。正则表达式采用Perl Style Regex语言。我认为最容易找到" .co.uk"最后,保留" .co.uk"左边的1个单词。如果任何其他句点位于1个单词的左侧,则删除所有这些字符。请记住" domain.co.uk"可以包括短划线和数字等

1 个答案:

答案 0 :(得分:-1)

我认为这可能有所帮助,它使用了lookbehind断言?<=

(?<=\.)[a-z0-9-]*\.co\.uk

您可以在此处进行测试:https://regex101.com/r/bA8xX8/2

目前子域只包含字母,数字和短划线:[a-z0-9-]

如果你想添加更多字符,请将它们放在方括号中。