zz log

zaininnari Blog

cssパーサ(メモ)

参考:各ブラウザのCSSパーサの実装方法 - katata_hの日記

PHPで扱えるkmyacc(yacc)

構文規則は、webkitのものが利用できます。

lexの方は自力でも作れるらしい。

作るなら、Webkitものを利用して、
http://trac.webkit.org/browser/trunk/WebCore/css/tokenizer.flex
を使ってflexで生成したものを移植 OR JavaScriptのを移植 WebKit の CSS の字句解析部分を JavaScript に移植しました - IT戦記

=> PHPのみで完結させるのは比較的難しい
(移植の単純作業に耐えられれば楽。またcだけなら簡単。しかし、それだと面白みがない)

PHP_LexerGeneratorとPHP_ParserGenerator

=> PHPのみで完結するが、lemonパーサというものを覚えないといけない