タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

JavaScriptとParserに関するseamlessbiasのブックマーク (2)

  • JavaScript で XPath の構文木を考えてみる。 - IT戦記

    またまた パーサーブームの続編です。 昨日は数式のパーサーを作って、帰り道にいろいろ考えたんですけど、普通の言語で考えると構文木って結構複雑になるんじゃないかなあって思いました。 で、横断歩道で明日 XPath の構文木を考えてみようと思ったわけです。 では、仕様と見比べながら XPath の構文木の構造を考えてみましょう。 仕様読むの大嫌いなんですけど、がんばります。 仕様のリンク xpath cover page - W3C まず、冒頭に The primary syntactic construct in XPath is the expression. An expression matches the production Expr. http://www.w3.org/TR/xpath#section-Introduction とあるので、 XPath 全体は Expr である

    JavaScript で XPath の構文木を考えてみる。 - IT戦記
  • IT戦記 - JavaScript で数式パーサを書いてみた。

    背景 いままで、ちゃんとパーサというものを書いたことがなかったので勉強のためにアレコレ考えながらやってみようと思って、簡単な数式を木にするパーサを書いてみようと思ったのです>< 今回作るパーサの仕様 パースする数式の演算子は二項演算子 + - * / と単項演算子 + - だけ。 括弧とかは使わない。 演算の優先順位は * / のほうが + - より高い。つまり、 1 + 1 * 1 は 1 + (1 * 1) 単項演算子は二項演算子より優先順位が高い。つまり、 - 1 + 1 は (-1) + 1 で、作ってみた! ソースコード filter 関数とか使ってるので、 Firefox only です。 var parse = function(source) { var tokens = source.match(/[-+*/]|[^-+*/\s]+|\s+/g).filter(/^[^\

    IT戦記 - JavaScript で数式パーサを書いてみた。
  • 1