回 帖 发 新 帖 刷新版面

主题:请问这<td[^>]*?>'si里面的si表示什么?

**
 * 将HTML表格的每行每列转为数组,采集表格数据 
 *
 * @param string $table
 * @return array
 */
function get_td_array($table) { 
    $table = preg_replace("'<table[^>]*?>'si","",$table);
    $table = preg_replace("'<tr[^>]*?>'si","",$table);
    $table = preg_replace("'<td[^>]*?>'si","",$table);
    $table = str_replace("</tr>","{tr}",$table);
    $table = str_replace("</td>","{td}",$table);
    $table = preg_replace("'<[\/\!]*?[^<>]*?>'si","",$table);    //去掉 HTML 标记
    $table = preg_replace("'([\r\n])[\s]+'","",$table); //去掉空白字符
    $table = str_replace(" ","",$table);
    $table = str_replace(" ","",$table);
    $table = explode('{tr}', $table);
    array_pop($table);
    foreach ($table as $key=>$tr) {
        $td = explode('{td}', $tr);
        array_pop($td);
        $td_array[] = $td;
    }
    return $td_array;

回复列表 (共1个回复)

沙发

i不区分大小写的匹配
s使句点(.)匹配任何字符,包括换行符(\n)

我来回复

您尚未登录,请登录后再回复。点此登录或注册