suchen

Heim  >  Fragen und Antworten  >  Hauptteil

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

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

urlq=https://zh.wikipedia.org/zh/test&sa=U&ved=0ahUKEwjZyO_jtvTKAhXFGh4KHVPkA70QFggeMAE&usg=AFQjCNET0LD_wKKA7nfCkcC44Oii6I13nQ
PHP中文网PHP中文网2897 Tage vor295

Antworte allen(3)Ich werde antworten

  • PHPz

    PHPz2017-04-10 17:05:38

    正则啦

    $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;

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-04-10 17:05:38

    看看 parse_url 这个函数可不可以

    Antwort
    0
  • 天蓬老师

    天蓬老师2017-04-10 17:05:38

    给你一个自定义函数

    //$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;
    }

    Antwort
    0
  • StornierenAntwort