> 백엔드 개발 > PHP 튜토리얼 > 求一段php正则替换规则

求一段php正则替换规则

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-23 14:20:43
원래의
1089명이 탐색했습니다.

/e/tags/index.php?page=23&tagname=%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4&line=3&tempid=13

用preg_replace()把这样的替换成
/tag-%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4/23/

当page=0的时候替换成
/tag-%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4/


回复讨论(解决方案)

$str="/e/tags/index.php?page=0&tagname=%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4&line=3&tempid=13";$s= preg_replace_callback(     '#.+?page=(\d+)&tagname=([^&]+)&.+#',     create_function(            '$matches',            'return "/tag-$matches[2]/". ($matches[1] ? $matches[1]."/" : "");'        ),		$str);echo $s;
로그인 후 복사
로그인 후 복사
로그인 후 복사

/tag-%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4/

$str="/e/tags/index.php?page=0&tagname=%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4&line=3&tempid=13";$s= preg_replace_callback(     '#.+?page=(\d+)&tagname=([^&]+)&.+#',     create_function(            '$matches',            'return "/tag-$matches[2]/". ($matches[1] ? $matches[1]."/" : "");'        ),		$str);echo $s;
로그인 후 복사
로그인 후 복사
로그인 후 복사

/tag-%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4/

非常感谢 每次都是你帮我解决到问题 谢谢
顺便帮我看下这个吧
http://bbs.csdn.net/topics/390575116

$str="/e/tags/index.php?page=0&tagname=%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4&line=3&tempid=13";$s= preg_replace_callback(     '#.+?page=(\d+)&tagname=([^&]+)&.+#',     create_function(            '$matches',            'return "/tag-$matches[2]/". ($matches[1] ? $matches[1]."/" : "");'        ),		$str);echo $s;
로그인 후 복사
로그인 후 복사
로그인 후 복사

/tag-%B9%D8%D3%DA%D3%D1%D2%EA%D5%E4%B9%F3%B5%C4%B8%F1%D1%D4/

请教一下
<a title="总数"> <b>5</b> </a>  <a href="/e/tags/index.php?page=0&tagname=关于友谊珍贵的格言&line=3&tempid=13">首页</a> <a href="/e/tags/index.php?page=0&tagname=关于友谊珍贵的格言&line=3&tempid=13">上一页</a> <a href="/e/tags/index.php?page=0&tagname=关于友谊珍贵的格言&line=3&tempid=13">1</a> <b>2</b>
로그인 후 복사

为什么这一段替换不掉呢?

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿