$ar= preg_split('/(<\!--.*-->|<[^>]*>)/s', $str, -1, PREG_SPLIT_DELIM_CAPTURE);
请问这个方法里面的参数是什么意思 ,可以详细解释一下吗,最重要的是第一个参数

解决方案 »

  1.   

    第一个参数是正则表达式,意思是:
    按照<!-- -->或者是< >去分割字符串
      

  2.   

    '/(<\!--.*-->|<[^>]*>)/s' 中
    <\!--.*--> 匹配一个 html 注释标记形式的串
    <[^>]*> 匹配一个用尖括号括起的串
    两者只要有一个匹配成功就算匹配成功
      

  3.   

    第一个参数:分隔符组合,就是用正则表达式匹配的符合分割字符串
    第二个参数:当然是被分割的字符串了
    第三个参数:结果返回多少个字符串,-1表示没有限制
    第四个参数:有三个常量PREG_SPLIT_NO_EMPTY ,PREG_SPLIT_DELIM_CAPTURE ,  PREG_SPLIT_OFFSET_CAPTURE 
    PREG_SPLIT_NO_EMPTY :返回非空的成分;
    PREG_SPLIT_DELIM_CAPTURE :定界符模式中的括号表达式也会被返回;
    PREG_SPLIT_OFFSET_CAPTURE:返回分割出的字符串在之前所在的位置,也就是偏移量我正在使用《Csdn收音机》第一时间获取最新动态!
      

  4.   


    '/(<\!--.*-->|<[^>]*>)/s'
    意思是遇到<!--任意内容--> 或者 <任何非大于号内容> 两个字符如:
    $str = "this is a book, <!--book--> I can borrow it to you <It> Because you are my friend!";$ar= preg_split('/(<\!--.*-->|<[^>]*>)/s', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);/*
    结果返回:Array
    (
        [0] => this is a book, 
        [1] => <!--book-->
        [2] =>  I can borrow it to you 
        [3] => <It>
        [4] =>  Because you are my friend!
    )*/$ar= preg_split('/(<\!--.*-->|<[^>]*>)/s', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);/*
    结果返回:Array
    (
         [0] => Array
            (
                [0] => this is a book, 
                [1] => 0
            )
     
        [1] => Array
            (
                [0] =>  I can borrow it to you 
                [1] => 27
            )
     
        [2] => Array
            (
                [0] =>  Because you are my friend!
                [1] => 55
            )
    )*/$ar= preg_split('/(<\!--.*-->|<[^>]*>)/s', $str, -1, PREG_SPLIT_NO_EMPTY);/*
    结果返回:Array
    (
        [0] => this is a book, 
        [1] =>  I can borrow it to you 
        [2] =>  Because you are my friend!
    )*/我正在使用《Csdn收音机》第一时间获取最新动态!
      

  5.   

    split 貌似和 implode还是exploded类似的?
      

  6.   

    这个功能比implode功能强大多了我正在使用《Csdn收音机》第一时间获取最新动态!