遊星ゲームズ
FrontPage | RSS


Wikiインライン要素の変換ロジック
 日記

 正規表現でやろうと思ったんだけど、入れ子を無限に許すとした場合どうすんのかなあ……というのでつまってやめた。ていうか無理な気がする。

 ようするにほしいのは、
「無限に入れ子構造を許可したカッコの、開始から終了までに一致する正規表現」
 なんだが。中にかっこの組がいくつあるかわからないとなると、難しい。↓にもそんなこと書いてあるようだし。
http://www.hyuki.com/dig/paren.html

 他のWikiのソース参考にしたくても、無限の入れ子構造を許可したWikiなんてないからなあ。
 いままではどうしていたのかというと、一番内側から順に、マッチしなくなるまで変換をくりかえしていたのです。しかしこの方法はやめたい。
 よくいうロジックとビューの分離をするために、一度オブジェクトとして表現したいんだが、内側から一致しちゃうとそれができない。一発でHTMLに変換しちゃうなら難しくないんだが……。

 まあ理屈としては、無理に正規表現つかうよりも一文字ずつ読み出していったほうが速いはずなので、これでいいとは思うんだけど。(正規表現はコンパイル済みとはいえ)
 なんか方法あるなら知りたい。


Wikiインライン要素の変換ロジックを