◀一般トップへ
  • 5580 正規表現キーワードへの要望
    • 5581 Re:正規表現キーワードへの要望
    • 5584 Re:正規表現キーワードへの要望
      • 5585 Re2:正規表現キーワードへの要望
        • 5587 Re3:正規表現キーワードへの要望
          • 5588 Re4:正規表現キーワードへの要望
  • [5580] 正規表現キーワードへの要望 miya 2006年11月07日 13:57

    おつかれさまです。

    正規表現キーワードによる文字への着色に関する要望なのですが、
    正規表現にヒットした文字列のうち、着色する部分を指定することは
    できませんでしょうか。

    自分がしたいことは、CやJavaなどで大文字と数字のみで構成され、
    記号で囲まれた文字列を定数として強調表示したいという要求が
    ありまして、次のような設定をしています。

    /((["'])([\\].|[^\2])*?\2)/k ダブルクォーテーション文字列
    /\W([A-Z_][A-Z0-9_]*)\W/k 正規表現キーワード1

    しかし、この状態ですと、
    hoge[ClassA.CONST_FOO] = ~
    などと記述された部分にて、ピリオド(.)や大括弧(])まで
    強調表示されてしまうので、これをなくしたいのです。
    • [5581] Re:正規表現キーワードへの要望 miya 2006年11月07日 16:31

      すみません。
      自己解決いたしました。

      > /((["'])([\\].|[^\2])*?\2)/k ダブルクォーテーション文字列
      > /\W([A-Z_][A-Z0-9_]*)\W/k 正規表現キーワード1

      後読み可能な正規表現DLLに変更して、
      http://homepage3.nifty.com/k-takata/mysoft/bregonig.html

      正規表現キーワードを次のようにすることでうまくいきました。
      /(["'])([\\].|[^\1])*?\1/k ダブルクォーテーション文字列
      /(?<!\w)[A-Z_][A-Z0-9_]*(?!\w)/k 正規表現キーワード1
    • [5584] Re:正規表現キーワードへの要望 じゅうじ 2006年11月08日 12:14

      ▼ miyaさん
      > /((["'])([\\].|[^\2])*?\2)/k ダブルクォーテーション文字列
      > /\W([A-Z_][A-Z0-9_]*)\W/k 正規表現キーワード1
      >

      /(')([\\].|[^\1])*?\1/k シングルクォーテーション文字列
      /(")([\\].|[^\1])*?\1/k ダブルクォーテーション文字列
      /(?!\W)[A-Z_][A-Z0-9_]*(?=\W)/k 正規表現キーワード1

      そのまま、BREGEXP.DLL で、行けました。
      入れ替える必要ないです。
      • [5585] Re2:正規表現キーワードへの要望 (全略) 2006年11月08日 13:39

        ▼ じゅうじさん
        > ▼ miyaさん
        > > /((["'])([\\].|[^\2])*?\2)/k ダブルクォーテーション文字列
        > > /\W([A-Z_][A-Z0-9_]*)\W/k 正規表現キーワード1
        > >
        >
        > /(')([\\].|[^\1])*?\1/k シングルクォーテーション文字列
        > /(")([\\].|[^\1])*?\1/k ダブルクォーテーション文字列
        > /(?!\W)[A-Z_][A-Z0-9_]*(?=\W)/k 正規表現キーワード1
        >
        > そのまま、BREGEXP.DLL で、行けました。
        > 入れ替える必要ないです。
        いや、間違ってます
        最初の大文字と数字のみで構成されっていう条件を満たせてません

        戻り読みつかわんとやるんでしたら
        m/\b_*[A-Z][A-Z0-9]*\b/
        じゃないですかね~
        • [5587] Re3:正規表現キーワードへの要望 じゅうじ 2006年11月08日 20:58

          ▼ (全略)さん
          > ▼ じゅうじさん
          > いや、間違ってます
          > 最初の大文字と数字のみで構成されっていう条件を満たせてません
          >
          > 戻り読みつかわんとやるんでしたら
          > m/\b_*[A-Z][A-Z0-9]*\b/
          > じゃないですかね~

          有難う御座います。大変助かりました。

          /\b[A-Z_][A-Z0-9_]*\b/k
          • [5588] Re4:正規表現キーワードへの要望 miya 2006年11月08日 23:24

            ▼ じゅうじさん
            > ▼ (全略)さん
            > > ▼ じゅうじさん
            > > いや、間違ってます
            > > 最初の大文字と数字のみで構成されっていう条件を満たせてません
            > >
            > > 戻り読みつかわんとやるんでしたら
            > > m/\b_*[A-Z][A-Z0-9]*\b/
            > > じゃないですかね~
            >
            > 有難う御座います。大変助かりました。
            >
            > /\b[A-Z_][A-Z0-9_]*\b/k

            おお、たしかにこれで標準の正規表現DLLでも期待通りに動きますね。

            ありがとうございました。