有一个形如:select element1,element2,element3...from table1;的字符串$str
怎么样通过正则表达式取出element1,element2.....并伏给$row1,row2,...
取出table1负给$tableName呢

解决方案 »

  1.   

    $str="select element1,element2,element3  ,sdfsdf,s from table1 where sdfsdf=ff";
    preg_match("/select\s+([\w,\s]+)\s+from\s+(\w+?)\s+.*/",$str,$match);
    $cols = array_map("trim",split(",",$match[1]));
    print_r($cols);$tab_name = trim($match[2]);
    echo $tab_name;
      

  2.   

    先用split将$str按“空格”分开
    从数组的第二个开始就是element[]  直到遇到from
    数组的最后一个数就是$tableName================
    呵呵  不提供源码