テーブル処理に悩む

PukiWiki表記の「|区切り/>でcolspan/~でrowspan」実装に悩む。
colspanは>の数をカウントして>でないセルにcolspan=個数+1を付け加えるだけだから難しくないが、rowspanは以前の行に戻って処理せねばならない。どうしたものか。
最初の段階で判定を行い、テーブル開始時点から通常の行単位処理を停止して配列にストック→まとめて処理するのが正しいだろうか。