php正则替换文本中的域名网址

源码技巧2年前 (2023-02-27)2880

php正则实现替换域名的方法:首先获取网站的url;然后使用正则表达式“preg_match($reg, $url,$res);”提取域名;最后通过“preg_replace”方法更换新的域名即可。

正则提取的url中的域名以及替换域名的方法 preg_match()和preg_replace()

<?php 
    //网站的url
    $url = 'http://www.baidu.com/index.php';
    //正则表达式
    $reg = '/(http):\/\/([^\/]+)/i';
    preg_match($reg, $url,$res);
    /**  $res的结果
    array (size=3)
    => string 'http://www.baidu.com' (length=20)
    => string 'http' (length=4)
    => string 'www.baidu.com' (length=13)
    */
    //要替换的位置替换成什么
    $url1 = 'www.retao5.com';
  
    /**
    Example #1 使用后向引用紧跟数值原文
    */
    echo preg_replace($reg, 'http://'.$url1, $url);
  
         
    /**
    Example #2 preg_replace()中使用基于索引的数组
    */
    $patterns[0] = '/'.$res[2].'/';
    $replacements[0] = $url1;
    echo preg_replace($patterns, $replacements, $url);
    //结果为 http://www.retao5.com/index.php
  
  
  
 ?>


标签: 替换域名

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。