▶ 実 行
▶ 実行
クリア
テーブルDOM操作プラグイン
by ユメミノウツツ
//【テーブルDOM操作プラグイン】 // 制作:賢者ユメミノウツツ // ver 1.0 // // [プラグインの説明] // テーブルDOMを操作する関数を追加します。 // テーブルDOMを動的に変更したい場合に活用できます。 // 具体的には、 // 1. テーブルDOMを動的に書き換える「テーブル書き換え」 // 2. テーブルDOMを二次元配列に変換する「テーブル二次元配列化」 // の2つを追加します。 // // [サンプルプログラム] // https://n3s.nadesi.com/id.php?2751 // // [解説(Qiita)] // (作成中) /** * テーブルDOMの内容をCSVデータを元に書き換えます。 * @param TABLE テーブルDOM。テーブル作成の戻り値など。 * @param CSV CSV形式の文字列 */ ●(TABLEをCSVで)テーブル書き換えとは TMP=CSVのテーブル作成 TMPをDOM親要素からDOM子要素削除 TABLEに(TMPのDOM_HTML取得)をDOM_HTML設定 ここまで /** * テーブルDOMの中身を二次元配列に変換して返す関数。 * テーブルの内容が手元にないときや、特定のセルだけを変更したいため二次元配列として内容を得たい場合に使えます。 * 後者の場合は表CSV変換を通したのちテーブル書き換えを使うと実装できるかと思います。 * 内部的には取得したHTMLを無理やりパースしているのでバグがあるかもしれません。見つけたらQiitaなどでご連絡ください。 * @param TABLE テーブルDOM * @return テーブルを変換した二次元配列 */ ●(TABLEを)テーブル二次元配列化とは AA=[] ループフラグ=true ループ文字数=0 行数=0 テーブルHTML=TABLEのDOM_HTML取得 テーブル配列=テーブルHTMLを「<tr>」で区切る テーブル配列を反復 行HTML=対象 // tbodyなどを消す もし、((対象で「<th」が何文字目)!=1)かつ((対象で「<td」が何文字目)!=1)ならば、 続ける ここまで // 行から要素を抜き出す ループ文字数=0 AA[行数]=[] ループフラグの間 抜出左=行HTMLでループ文字数から「>」を文字検索 抜出右=OR((行HTMLでループ文字数から「</th>」を文字検索), (行HTMLでループ文字数から「</td>」を文字検索)) もし、抜出右!=0ならば、 AA[行数]に(行HTMLで抜出左+1から抜出右-抜出左-1文字抜き出す)を配列追加 ループ文字数=行HTMLで抜出右から「>」を文字検索 違えば、 ループフラグ=false ここまで ここまで ループフラグ=true 行数を1増やす ここまで AAで戻る ここまで