首页 > 解决方案 > 获取字符串中第一个带字母的点的索引

问题描述

我有一个这样的字符串:

dsl-34.345.324-24718.pool.vodafone9.com(不是真正的主机名,只是一个例子)

我已经对 preg_split 进行了修改,但这并没有给我带来好的结果。

无论如何,我想得到这个结果:

pool.vodafone9.com

编辑

抱歉,由于没有直接显示我对 所做的preg_split()操作,我已经考虑过这样做,但是,当域内有数字时,它会导致完全错误的结果。

preg_split( "/[0-9]\.[a-z]/", $hostAddr)

扑灭

ools.vodafone.com

但是使用 vodafone9.com 会导致

标签: phpregex

解决方案


尝试使用此正则表达式检测第.一个字母后的所有内容:

$hostname = 'dsl-34.345.324-24718.pool.vodafone9.com';
$matches = array();
preg_match('/(?<=\.)[a-zA-Z].+/', $hostname, $matches);
echo $matches[0];

推荐阅读