タグ

- 正規表現に関するokojo3のブックマーク (3)

  • 正規表現ベースの字句解析器を書くときは - 最速チュパカブラ研究会

    正規表現ベースの字句解析器を書くときは、narcissusというJSベースのJS処理系のコードを見るといいです http://mxr.mozilla.org/mozilla/source/js/narcissus/jsparse.js 面倒な正規表現の模範解答が載ってます。下手に自分で考えて誤爆するより、一流の人が書いたものを使いましょう 正規表現リテラル /^\/((?:\\.|[^\/])+)\/([gimy]*)/ 文字列(ダブルクォート、シングルクォート共)/^"(?:\\.|[^"])*"|^'(?:[^']|\\.)*'/ → 訂正 Cスタイルコメント(一行、ブロック共) /^\/(?:\*(?:.|\n)*?\*\/|\/.*)/ ↓narcissusについてはyukobaさんのプレゼンを(去年のShibuya.es) http://accelart.jp/shibuyajs

  • Narcissus の正規表現: Days on the Moon

    「前のエントリで書き忘れてた - 最速チュパカブラ研究会」にて、Narcissus で使われている正規表現が参考になるという話が出ています。 文字列リテラル /^"(?:\\.|[^"])*"|^'(?:[^']|\\.)*'/ 正規表現リテラル /^\/((?:\\.|[^\/])+)\/([gimy]*)/ コメント /^\/(?:\*(?:.|\n)*?\*\/|\/.*)/ 一流の人が書いたものを使いましょうというのに異を唱えるつもりはありませんが、そのままコピー & ペーストしていては意味がありません。ここはやはり一文字一文字心をこめて写経しましょう……ではなく、どうしてその書き方でうまくいくのかをきちんと考えた上で使いましょう。 文字列リテラルにマッチする正規表現 上記の文字列リテラルを表す正規表現から、一重引用符でくくられた文字列にマッチする部分だけを抜き出すと '(?:[^

  • 正規表現講座 - Ukiwiki

    間違いだらけの正規表現講座 このテキストについて エディタをいじっていたりすると、「正規表現」という言葉を目にする事があるかと思います。 正規表現ってなんだか便利そうだけど、良く分からない…という方が多いのではないでしょうか。 ここでは、「テキストエディタは普通に扱えるけど正規表現は知らない」くらいの方を 対象として、正規表現の基について、何回かに分けて解説していきたいと思います。 ただし、私は多分沢山間違いを書くと思いますので、その点はご了承下さいませ… 注意 正規表現というのは、実はきちんと決まった規則があるわけではなく*1 多くのソフト(処理系)で同じような表現が使えるように出来ている、といった程度の 互換性しかありません。 そのため、使う処理系が異なると、細かい所が違ってくる場合があります。 以下の記事においては、多くの処理系で一般的に使えると思われる正規表現及び その動作につい

  • 1