>백엔드 개발 >PHP 튜토리얼 >javascript - php提取这段字符串中间的一段内容

javascript - php提取这段字符串中间的一段内容

WBOY
WBOY원래의
2016-06-06 20:18:301359검색

谁帮我想个好点的办法,用php提取下面的字符串中urlq=到&sa=U之间的内容

<code>urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ
</code>

回复内容:

谁帮我想个好点的办法,用php提取下面的字符串中urlq=到&sa=U之间的内容

<code>urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ
</code>

正则啦

<code>$str = 'urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ';

preg_match("/urlq=(.*?)&sa/", $str, $a);

$b = $a[1];

echo $b;</code>

分割啦

<code>$str = 'urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ';

$str1 = explode('urlq=', $str);

$str2 = explode('&sa', $str1[1]);

$b = $str2[0];

echo $b;</code>

看看 parse_url 这个函数可不可以

给你一个自定义函数

<code>//$kw1为想截取的字符串
//$mark1位起始字符
//$mark2为结束字符
//返回一个截取好的字符串

//截取指定两个字符串之间
function getNeedBetween($kw1,$mark1,$mark2){
 $kw=$kw1;
 $kw='123'.$kw.'123';
 $st =stripos($kw,$mark1);
 $ed =stripos($kw,$mark2);
 if(($st==false||$ed==false)||$st>=$ed)
 return 0;
 $kw=substr($kw,($st+1),($ed-$st-1));
 return $kw;
}</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.