>>23-24
えと、本文か見出しか、というところが機械的に判断できないとなると、作業
は相当難航するでしょうね。それから正規表現の \s は半角スペースとタブは
含みますが、全角スペースは含みません。これも注意。

もしくは、見出し+本文が必ず空行によって区切られているのだとすれば、空
行を発見することで、
・空行の次の行が見出し
・その次から空行の前までが本文(先頭の空白は取り除く)
という戦略で、切り出すことができるでしょう。

それから、空行で切り出すんだったら、 ruby -00 を使うのも手です。

もしくは、見出しの方に
= ここが見出し
ここは本文

のように先頭に何かの記号(この場合は =、他には * なんかも使われることが
ある)をつけてやれば、やはり簡単に切り出すことができるでしょう。