求助:一个很难的PHP采集替换问题

区块爱好者88 2012-11-01 07:52:50
要替换HTML里面含有 item.html? 的全部超链接地址
将这些含有item.html的地址替换成MD5过后的超链接
要怎么写呢
比如地址 /item.html?id=222
然后将 /item.html?id=222进行MD5后再替换掉/item.html?id=222
...全文
116 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
区块爱好者88 2012-11-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

引用 6 楼 的回复:
恩可以使用太感谢你了。
如果是取网址中的一部分来替换要怎么来呢。比如网址是abc.com/newid=11;将这些含有abc.com的地址替换成MD5过后的超链接

建议你学习一下正则表达式
[/Quote]
恩 现在只能多部下例子再进行学习了
acabin 2012-11-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
恩可以使用太感谢你了。
如果是取网址中的一部分来替换要怎么来呢。比如网址是abc.com/newid=11;将这些含有abc.com的地址替换成MD5过后的超链接
[/Quote]
建议你学习一下正则表达式
区块爱好者88 2012-11-01
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

echo preg_replace('/(?<=href=")([^"]*item\.html\?[^"]*)/e','"/list/".md5("$1")',$s);
[/Quote]
恩可以使用太感谢你了。
如果是取网址中的一部分来替换要怎么来呢。比如网址是abc.com/newid=11;将这些含有abc.com的地址替换成MD5过后的超链接
一起混吧 2012-11-01
  • 打赏
  • 举报
回复
echo preg_replace('/(?<=href=")([^"]*item\.html\?[^"]*)/e','"/list/".md5("$1")',$s);
超级字帖 2012-11-01
  • 打赏
  • 举报
回复
试一下就知道了啥!
区块爱好者88 2012-11-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

PHP code
$s=<<<html
<a href="wwww.baidu.com">baidu.com</a>
<a href="www.example.com/item.html?id=222">example</a>
html;
echo preg_replace('/(?<=href=")([^"]*item\.html\?[^"]*)/e','md5("$1")',$s);
[/Quote]

可以使用是我弄错了。我想问下如果在MD5前加个前缀怎么是呢
比如 弄成/list/后面跟着MD5
区块爱好者88 2012-11-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

PHP code
$s=<<<html
<a href="wwww.baidu.com">baidu.com</a>
<a href="www.example.com/item.html?id=222">example</a>
html;
echo preg_replace('/(?<=href=")([^"]*item\.html\?[^"]*)/e','md5("$1")',$s);
[/Quote]

好像item.html?id=222&ai=22的就不行了
一起混吧 2012-11-01
  • 打赏
  • 举报
回复
$s=<<<html
<a href="wwww.baidu.com">baidu.com</a>
<a href="www.example.com/item.html?id=222">example</a>
html;
echo preg_replace('/(?<=href=")([^"]*item\.html\?[^"]*)/e','md5("$1")',$s);

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧