素直に状態機械を組むんじゃだめですか。

もともとの文法が行指向も単語指向(区切り文字一定)でもないのだから、
文字リストを頭から状態機械に食わせた方がアドホックな回避策を
付けるより手っとり速いんじゃないかと。

不正なHTMLをどこまで許容するかについては、一番書くのが楽なのは
なるべく許容的な戦略で状態機械を回しておいて、矛盾が出てきたら
バックトラックして厳格な方に切替える、という手もありだと思います。
パフォーマンス的にはバックトラックしないほうが良いでしょうが。

--shiro



From: shelarcy <shelarcy / capella.freemail.ne.jp>
Subject: [haskell-jp:537] Re: タグ中の空白文字の消去(Was: 改行文字列の消去 
Date: Tue, 11 Jan 2005 17:57:06 +0900

> On Tue, 11 Jan 2005 15:26:34 +0900 (JST), Nobuo Yamashita  
> <nobsun / sampou.org> wrote:
> >> <a href="content.html>
> >>
> >> のように閉じの抜けた正しくない HTML でもきちんと動作するものが
> >
> > words で区切っておいて、区切った単語ごとに最初の文字と
> > 最後の文字を見て、引用符とか、=とかを解釈しながら、
> > 字句分解する必要がありますね。
> 
> うーん。単純に words で区切るのだと困る場合がありますね。
> <a href="index .html"> とか。
> 
> 実際今嵌ってるんですが。
> 
> こういう場合にいい方法ないかな?
> 
> -- 
> shelarcy <shelarcy capella.freemail.ne.jp>
> http://page.freett.com/shelarcy/
> 

--
ML: haskell-jp / quickml.com
使い方: http://QuickML.com/