タグ

2011年11月29日のブックマーク (2件)

  • K2Editorでの正規表現の解説 目次

    K2Editorでの正規表現の解説 K2Editor では検索、置換、キーワードの強調などに正規表現を使う事が出来ます。このページは、その正規表現を説明する目的で書かれています。 K2Editorで公式にサポートしているのは、K2Regexp.dll による正規表現です。これから述べる内容も、K2Regexp でサポートしているものを対象としています。 K2Regexp.dll は BREGEXP.DLL(より正しく言えば、Linux 用の Bregexp ライブラリ)に制御系の拡張をしたものです。正規表現エンジン部分は BREGEXP から変更されていないようです。 BREGEXP は Perl5(perl version 5.002 だと思われる)互換の正規表現エンジンなので、Perl の解説がほぼそのまま使えますが、Perl 自体が正規表現と密接につながっているため、うまく適応するこ

    chanpon0
    chanpon0 2011/11/29
    後方参照など
  • 正規表現サンプル(最短一致について)

    「.*」や「.+」を使うと、限りなく連続した文字を表します。 これは非常に便利なのですが、予想以上に長くマッチして、思ったように動かないことがあります。 これを解決するためには「?」を付加して最短一致するように仕向ける方法があります。 また、ここで説明する「?」は「直前の文字の0回または1回に一致」とは違います。 文字は同じですが、まったくの別物です。(記述する位置で見分けてください。) たとえば、HTMLのタグを消す場合、このように書いたとします。(Perlの置換文法) s/<.+>//g これでタグは消えるのですが、タグだけではなく、タグに挟まれた間の文字まで消してしまいます。(下線部分) <P>abc</P> 理由は最長一致モードで動作しているからです。 動作をみると、途中に「>」が出てきているのですが、そこでは止まらず、最後の「>」までマッチしていま