比如我有一个字符串
$abc="abc/*abc中文字符*/abc"
我想截取/*-----*/这里面的字符不知道怎么去表达

解决方案 »

  1.   

    $s="http://topic.csdn.net/*u/20110403/15/8ba84115-30ba-4654-8a1f-40ed*/f66f5614.html?52303";
    preg_match('/\/\*(.*?)\*\//',$s,$matched);
    echo($matched[0]);
      

  2.   

    这个输出的是/*u/20110403/15/8ba84115-30ba-4654-8a1f-40ed*/能满足一半
    比如里面有很多/*  */的特殊字符,数量不能确定  怎么一起输出?
      

  3.   

    <?
    class del
    {function dels($directory,$filename){switch($filename)
    {
    case 'css':
    $filename='.css';
    $re='/\/\*.*\w*.*\w*.*\*\//';
    break;
    case 'js':
    $filename='.js';
    $re='/\/\/.*\w*.*/';
    break;
    default:
    $filename='.php';
    $re='/\/\/.*\w*.*/';
    break;
    }
    //$directory="css/";
    $dir=@dir($directory);
    $arrayout=array();
    while($file=$dir->read())
    {
    $s="";
    $i=0;
    if(substr($file,strpos($file,'.'))==$filename)
    {
    //$str=fopen($directory.$file,'rw');
    $str=file_get_contents($directory.$file);
    preg_match_all($re, $str, $arrayout);
    foreach($arrayout[0] as $a)
    {
    //print_r(explode($a,$str));
    if($i==0)
    {
    //echo $a;
    $es=explode($a,$str);
    foreach($es as $ea)
    {
    $s.=$ea;
    }
    // echo $s.'<br/>';
    }else
    {
    $es=explode($a,$s);
    $s="";
    foreach($es as $ea)
    {
    $s.=$ea;
    }
    }
    $i++;
    }
    $str=file_put_contents($directory.$file,$s);
    $arr[]=$str;
    }
    $i++;
     }
    $dir->close();
    return $arr;
    }
    }
    ?>这是我以前做的一个例子你可以参考下