如:字符串为:"中国社会科学院科研局副局长黄群慧昨日表示如果将整个工业化进程按照工业化初期"
现要输出 "社会"  "昨日" 在上面的字符串中间隔多少个字符,
  并输出“社会科学院科研局副局长黄群慧昨日”(社会到昨日 这一段)
用php怎么实现呀,在线等

解决方案 »

  1.   

    explode
    substr 
    strlen
    上面的函数可以实现
      

  2.   


    <?php
    $str="中国社会科学院科研局副局长黄昨日表示";
    $ostr="社会";
    $tstr="昨日";
    $onum=strpos($str,$ostr);
    $tnum=strpos($str,$tstr);
    echo substr($str,$onum,$tnum);
     ?>
      

  3.   

    $string = '中国社会科学院科研局副局长黄群慧昨日表示如果将整个工业化进程按照工业化初期';
    preg_match('/(社会)(.*)(昨日)/', $string, $matches);echo $matches[0];    
    echo strlen($matches[2])/2;  //间隔中有多少个中文
      

  4.   

    <?php
    $str="中国社会科学院科研局副局长黄群慧昨日表示如果将整个工业化进程按照工业化初期";
    //  找到“社会后面的位置”也就是“科学院”。
    $pos1=strpos($str,"科学院"); 
    // 找到“昨日”的位置
    $pos2=strpos($str,"昨日");
    // 计算间隔并输出
    $interval=$pos2-$pos1;
    echo $interval;
    // 输出需要的句子。
    //找到“社会”的起点$pos_shehui=strpos($str,"社会");
    //找到 “昨日”后面的位置 “表示”。
    $pos_biaoshi=strpos($str,"表示");
    //计算出要显示的字符串长度。
    $strlen=$pos_biaoshi-$pos_shehui;
    //截取并输出所要的字符串
    echo substr($str,$pos_shehui,$strlen);
    ?>//希望能帮到你。
      

  5.   

    5楼的
    用变量怎么用呀
    $a="社会";
    $b="昨日";
    preg_match('/('$a')(.*)('$b')/', $string, $matches); 
    怎么运行不了呀,
      

  6.   

    $string = '中国社会科学院科研局副局长黄群慧昨日表示如果将整个工业化进程按照工业化初期'; 
    $a = "(社会)";
    $b = "(昨日)";
    preg_match("/$a(.*)$b/", $string, $matches); 
    echo $matches[0]; 
    echo "<hr>";
    echo strlen($matches[2])/2;  //间隔中有多少个中文5楼也许很忙;