▶ 実 行
▶ 実行
クリア
テーブルDOM操作プラグイン
by ユメミノウツツ
//【テーブルDOM操作プラグイン】 // 制作:賢者ユメミノウツツ // ver 1.1 (最終更新:2024/12/17) // // [プラグインの説明] // テーブルDOMを操作する関数を追加します。 // テーブルDOMを動的に変更したい場合に活用できます。 // 具体的には、 // 1. テーブルDOMを動的に書き換える「テーブル書き換え」 // 2. テーブルDOMを二次元配列に変換する「テーブル二次元配列化」 // の2つを追加します。 // // [サンプルプログラム] // https://n3s.nadesi.com/id.php?2751 // // [解説(Qiita)] // https://qiita.com/JKyumekamui/items/549bca6b3ccdeaa1f418 /** * テーブル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を)テーブル二次元配列化とは T_HTML=TABLEのDOM_HTML取得 // 空の二次元配列を表の行数分作る AA=[] (T_HTMLで「<tr」の出現回数)回、AAに空配列を追加 // パースする // ・<tr>があれば次の行へ // ・<th>か<td>があれば、内容を抜き出してAAに追加 // ・<th css="...">のように、タグの中の属性に注意する! i=-1 j=0 カーソル始=T_HTMLの0から「<」を文字検索 カーソル終=T_HTMLのカーソル始から「>」を文字検索 (カーソル始!=0)の間 もし、(T_HTMLのカーソル始から3文字抜出=「<tr」)ならば、 iを1増やす j=0 違えばもし、((T_HTMLのカーソル始から4文字抜出=「<th>」)||(T_HTMLのカーソル始から4文字抜出=「<th 」))ならば、 カーソル終=T_HTMLのカーソル始から「>」を文字検索 AA[i][j]=T_HTMLで(カーソル終+1)から((T_HTMLでカーソル始から「</th」を文字検索)-(カーソル終+1))文字抜き出す jを1増やす 違えばもし、((T_HTMLのカーソル始から4文字抜出=「<td>」)||(T_HTMLのカーソル始から4文字抜出=「<td 」))ならば、 カーソル終=T_HTMLのカーソル始から「>」を文字検索 AA[i][j]=T_HTMLで(カーソル終+1)から((T_HTMLでカーソル始から「</td」を文字検索)-(カーソル終+1))文字抜き出す jを1増やす ここまで カーソル始=T_HTMLのカーソル始から「<」を文字検索 ここまで AAで戻る ここまで
2da0b7ef14c9f0bc979376d34230e031
2750