テキスト処理のアルゴリズムについて
テキスト処理のプログラミング(アルゴリズム)についてご教示下さい。
以下に示します。
-----------------------
hogehoge
xxxxxxxxx
example.com
Header_1
color RED
Header_2
color BLACK
type M
Header_3
color GREEN
weight 40
type L
Header_4
color GREEN
END
afterhogehoge
zzzzxxxxxyyyy
-----------------------
↑このようなテキストを・・・・
↓こう並べ替えたいのです。
-----------------------
Header_1,color RED,,
Header_2,color BLACK,,type M
Header_3,color GREEN,weight 40,type L
Header_4,color GREEN,,
-----------------------
ポイントは二つあって、以下の通りとなります。
a)Header_[1234]に関するcolor、weight、typeといった情報は、次の"Header_"で始まる行までに全て記述される。
b)並べ替え後の書式は、必ず第2フィールドがcolor、第3フィールドがweight、第4フィールドがtypeでなくてはならない。
c)並べ替え前の、先頭行からHeader_1で始まる行までは削除
d)同じく、END(フラグとします)で始まる行以降を削除
当方、PowerShell3.xで苦戦しているのですが、ご回答例は別の言語でも構いません。(出来れば ライトウェートな言語のいずれかで・・・)