转载出处:http://www.luanxin.top/index.php/archives/4/

仿站的时候扒下来的代码a链接总是指向别的地方,要一个一个改的话都要累死了,展示的时候随便点一下就乱跳,很烦,于是想用php写一个能改变a链接href属性的代码,代码如下:

<?php // 替换a标签中的href属性值
function a_replace_href($str) {
$preg = '/href=(\"|\')(.*?)(\"|\')/i';
$replacestr = 'href="#"';
$res = preg_replace($preg, $replacestr, $str);
return $res;
}
// 获取字符串中的所有a标签
function from_str_get_a($str){
$preg = '/<a .*?>/i';
preg_match_all($preg, $str, $imgArr);
return $imgArr[0];
}
$str = file_get_contents("index.html");
$data = from_str_get_a($str);//获取字符串中的a标签
$data1 = a_replace_href($data);//替换后应该显示的a标签
$res = $str;
// 反复对字符串进行查找替换
foreach ($data as $key => $value) {
$res = str_replace($value,$data1[$key],$res,$i);
}
// 另存文件
file_put_contents("index1.html",$res);
?>

原理就是采用正则匹配然后替换,如果你们有更好的想法或优化欢迎留言评论,分享一下您的心得!
测试效果如下:
源文件代码:

替换后文件代码:

最新文章

  1. csv表格处理(上)-- JS 与 PHP 协作导入导出
  2. 阅读ArrayBlockingQueue源码了解如何利用锁实现BlockingQueue
  3. djangocms安装技巧
  4. [知识点]SPFA算法
  5. TortoiseSVN期望文件系统格式在“1”到“6”之间;发现格式“7”
  6. 纯js分页代码(简洁实用)
  7. 2272: [Usaco2011 Feb]Cowlphabet 奶牛文字
  8. 为了提高性能,怎样动态载入JS文件
  9. 泡泡一分钟: Deep-LK for Efficient Adaptive Object Tracking
  10. Java学习笔记(7)
  11. LOJ#2720 你的名字
  12. NPOI之Excel——合并单元格、设置样式、输入公式、设置筛选等
  13. jstl 中无法使用EL语句。异常信息:According to TLD or attribute directive in tag file, attribute value does not accept any expressions
  14. OneZero第二周第四次站立会议(2016.3.31)
  15. go语言之进阶篇接口的定义和实现以及接口的继承
  16. HDU 2612 Find a way bfs 难度:1
  17. ① 设计模式的艺术-07.适配器(Adapter)模式
  18. python开发_shelve_完整版_博主推荐
  19. kali 2.0下搭建DVWA环境
  20. 初探babel转换器的安装与使用

热门文章

  1. 分布式锁 ----zookeeper实践 (排它锁)
  2. My algorithmic road
  3. linux下查看memcache是否正常
  4. SQL中如何使用方向键——lrwrap
  5. 流式数据处理在百度数据工厂的应用与实践 原创: 李俊卿 AI前线 今天
  6. React 高阶组件浅析
  7. element-ui框架的el-dialog弹出框被遮罩层挡住了
  8. python argparse例子实践
  9. 解析python 命令的-u参数
  10. git帮助和小结