Parsec の質問です。

C 言語のソースから、宣言されている構造体を抽出するパーサーを作りたいです。

"struct aaa {...} bbb" という形の構造体そのものを解釈するパーサーは作れました。
しかし、その C 言語のソースは構造体以外にも余計な文字列があるので、
それらを「解釈しないで」省き、構造体だけを抽出したいです。

そういう場合は、まず正規表現で構造体部分の文字列を取り出してから、
それらをパーサーで解釈するという方法はあまりに拙いでしょうか?

構造体を表す文字列に出会うまで全ての文字列を捨てる、
というパーサーがなかなか作れません。

ghc 6.12.3
parsec 3.1.0