誰幫我想個好點的辦法,用php提取下面的字串中urlq=到&sa=U之間的內容
urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ
回複內容:
誰幫我想個好點的辦法,用php提取下面的字串中urlq=到&sa=U之間的內容
urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ
正則啦
$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;
分割啦
$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;
看看 parse_url 這個函數可不可以
給你一個自訂函數
//$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;}