Perlで独自の構文解析プログラムを作る
2009年3月11日 11:37これからはブログを独自文法で書いて、Perl で文法を解析して HTML のタグ付けを自動で行うことにしました。
こういったプログラムを作る上での参考になればと考え「構文解析プログラム」の作成過程を公開します。
構文解析プログラム作成の背景
現在、ブログの作成管理に Movable Type Open Source を利用しているので、書き方としてテキストフォーマットをいくつか選べますが、HTML のタグ付けを思い通りに行いたいのでテキストフォーマットは「なし」にして、文章を作りながら HTML によるタグ付けを手作業で行っています。
まずは、現在どのように書いているかを、今書いている文書を例にして説明します。
始めはタグ付けされていない文書を次のように書きます:
構文解析プログラム作成の背景 現在、ブログの作成管理に Movable Type Open Source を利用しているので、書き方としてテキストフォーマットをいくつか選べますが、HTML のタグ付けを思い通りに行いたいのでテキストフォーマットは「なし」にして、文章を作りながら HTML によるタグ付けを手作業で行っています。 まずは、現在どのように書いているかを、今書いている文書を例にして説明します。
そして、見出しに h2 のタグを付け:
<h2>構文解析プログラム作成の背景</h2>
リンクしたいところは a のタグを付け:
<a href="http://www.movabletype.jp/opensource/">Movable Type Open Source</a>
段落は p のタグを付けます:
<p>現在、ブログの作成管理に <a href="http://www.movabletype.jp/opensource/">Movable Type Open Source</a> を利用しているので、書き方としてテキストフォーマットをいくつか選べますが、HTML のタグ付けを思い通りに行いたいのでテキストフォーマットは「なし」にして、文章を作りながら HTML によるタグ付けを手作業で行っています。</p> <p>まずは、現在どのように書いているかを、今書いている文書を例にして説明します。</p>
また、上記で示した HTML のタグを挟む < や > などは HTML のタグを表す記号である為、ブラウザによる HTML 解析時にタグではなく文字として認識させる上で文字実体参照などの < や > で書く必要があります。
HTML を学ぶ上では手書きが理解しやすいですが、ある程度の理解があるなら手作業で書くのは無駄でしかありません。
無駄な事をせず思い通りのタグ付けを行う為、独自の構文解析プログラムを開発します。
標準的なタグ付けを行う
(X)HTML や CSS についての理解は必要ですので本を頼りにします。
(X)HTML は長く利用できますし、タグ付け(マークアップ)をする基本的なところを理解していれば、他のマークアップ言語を理解する時にも役立ちます。
W3Cは英語ですし、W3Cの仕様書等の文書の日本語訳集などもありますが、私は未だに仕様書をちゃんと読めませんので、後者の本を頼りにしています。
手作業の場合は面倒なのでどうしても手抜きになっていましたが、構文解析プログラムを作る上では標準的なタグの利用を意識したいと思います。
