有许多地址,规律不定,唯一的共性是全部由2个http://组成,比如
http://www.aaa.com/1234/dafdg/index?id=http://www.bbb.com/3456/efgh/
http://www.ccc.net/5678/index?key=http://ddd.org/7890/index.php
... ...
如何用正则,批量获取第二个http://后面的网址?如:
www.bbb.com/3456/efgh/
ddd.org/7890/index.php
谢谢。
http://www.aaa.com/1234/dafdg/index?id=http://www.bbb.com/3456/efgh/
http://www.ccc.net/5678/index?key=http://ddd.org/7890/index.php
... ...
如何用正则,批量获取第二个http://后面的网址?如:
www.bbb.com/3456/efgh/
ddd.org/7890/index.php
谢谢。
解决方案 »
- 关于PHP定时操作MYSQL
- 全国性的大站怎么搞?有经验的交流下
- 关于搜索页时间传值的问题请求帮助~~~急~~啊~~~~在线等~~~谢谢啊
- 数据用数组读出三个字段,如何 合并成一个字符串,菜鸟问题,大家帮忙!!!!
- 免费建站关于Web服务器安装PHP的问题
- 求救求救!请教牛人一个严格的PHP网址跳转代码
- ”站内搜索“这个功能是怎么会事 原理是什么啊
- 从一个文件中取数值问题,请求帮助
- php如何在shell的调用中传入参数
- 想把post的变量遍历,怎样实现
- 求助,网页出现Fatal error: Call to a member function fetchrow() on a non-object
- 请教php发信功能
$matchs = array();
preg_match("#^http://.+http://(.+)$#",$str,$matchs);
echo $matchs[1];
1、用http://作为分隔符生成数组
2、获取第二个后面的内容
3、在开发机器上测试通过
4、为防止有的url没有两个http://的情况,可以对数组大小进行判断
$str="http://www.aaa.com/1234/dafdg/index?id=http://www.bbb.com/3456/efgh/"; $matchs = array(); preg_match("#^http://.+http://(.+?)$#",$str,$matchs); echo $matchs[1];
加个?立刻变成非贪霉
厉害,这里高手如云啊~~况且在万能的斑竹还没有浮现的情况之下……
^http://(.+?)=http://(.*)$