タグ

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

タグの絞り込みを解除

regexpに関するdrillhandsのブックマーク (2)

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

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

  • 英文を文ごとに分ける JavaScript

    英文を文ごとに分ける JavaScript 複数の文からなっている英文を一文ごとに分けて、配列にする JavaScript を書いてみた。すでに、ありそうだけど取り合えず。 文末を判定する正規表現はGNU Emacs Lispリファレンスマニュアル: 探索と一致を参考にさせてもらいました。参考というかそのままな感じですが function sentenceSeparate(str) { var result = []; // "||"をエスケープ str = str.replace(/\|\|/g, "\\\|\\\|"); str = str.replace(/([\.\?!][\]\"\'\)\}]*)($| $|\s|\s\s*)/g, "$1$2\|\|"); var lines = str.split(/\|\|/); // エスケープしたのを戻す for (var i = 0;

    英文を文ごとに分ける JavaScript
  • 1