如果HTTP_HOST是[ANY] .yomomedia.com,我需要获取“yomomedia.com”,除非它是“dev.yomomedia.com”,否则它应该返回dev.yomomedia.com
echo preg_replace("/^([EVERYTHING-OTHER-THAN-DEV])\./Ui","",$_SERVER['SERVER_NAME'])
试过以下但没有成功:
echo preg_replace("/^(?!dev)\./Ui",'','www.yomomedia.com'); // returns www.yomomedia.com
echo preg_replace("/^(?!dev)\./Ui",'','dev.yomomedia.com'); // returns dev.yomomedia.com
答案 0 :(得分:4)
负被动组(前瞻)应该:
/^(?!dev).*\./Ui
答案 1 :(得分:2)
Look-arounds不要“消费”任何字符。因此,您的表达式与相同,前三个字符不是dev
(^(?!dev)
)AND 第一个字符是句号({{ 1}})。
所以试试这个:
^\.
或者:
/^(?!dev\.)[^.]+\./Ui