ブックマーク / qiita.com/tsukamoto (1)

  • 2文字以上の空白で区切られた固定長テキストの解析 - Qiita

    概要 コマンド出力等にありがちな、以下の条件の固定長テキストを解析するためのサブルーチン。 全体としては固定長テキスト 先頭はヘッダ行 カラムは実行ごとに異なる(例えばコマンド実行時の引数で変わる) カラムの幅は実行ごとに異なる(例えば出力されるデータにあわせて変わる) カラムの間は2文字の空白で区切られている レコードによっては、あるカラムが空のこともある 解析方法 以下の方針で解析します。 1行目をヘッダ行として処理します。 ヘッダ行の「2文字以上の空白」の出現場所から、各フィールドの長さを判断します。 残りの行を、固定長テキストとして解析します。 結果は、ハッシュリファレンスの配列の形で返します。 ヘッダ行から「固定長」の長さを取得するので、事前に各フィールドの長さを定義する必要がなくなります。レコード行には、空のフィールドや、2文字以上の空白を含むフィールドがあっても大丈夫です。

    2文字以上の空白で区切られた固定長テキストの解析 - Qiita
  • 1