HTMLっぽいパーサ
HTMLっぽいパーサを作ってます。
XML形式なら簡単にDOMツリーにできるのですが、HTMLって、タグのOpen/Closeがあいまいで、たとえ正しいHTMLでも、うまくツリー状にならないです。
いい加減なHTMLでも、その「不備を察して」解釈しなければなりません。(「不備を察する」プログラムってどうやって作るんだ???)
純粋なHTMLならまだしも、今やっているのは「変態的」なHTMLだから厄介。
・・・で、ツリー状ではなく、フラットなリストにすればいいことに気がつきました。
ここまでは正確に解析できるし、今回やりたいことはこれで十分です。
こんな感じ。
Element "<html>" Text "\n\t" Element "<head>" Text "\n\t\t" Element "<title>" Text "a-sanの日記" Element "</title>" :
HTMLではいきなりDOMツリーにするよりは、こういう解析手順を踏んだほうがよさそうです。