我有很多看起来像这样的字符串
apl22002.prod.f02.dc2.example.com - DC2H2
N2 - apl220010.prod.f02.dc2.example.com
我想要一个正则表达式来仅匹配主机名,例如第一行是 apl22002,第二行是 apl220010。
我尝试了
^([^.]+)
,它适用于第一行,但我不确定如何让它与第二行一起工作。
我尝试了 ([\w_-]+(?:(?:\.[\w_-]+)+))
,它很好地匹配 FQDN,但与主机名不完全匹配。
有人可以指出我正确的方向吗?
谢谢!
此正则表达式将匹配中间至少有 1 个点字符的任何字符串,例如“outlook.com”。它只会捕获第一部分(主机名)。您几乎可以使用第二个正则表达式来完成它,但将整个字符串分组。我注意到您包含下划线字符“_”,如果有必要,请将其添加到下面的正则表达式中。
([\w-]+)(?:\.[\w-]+)+