正規表現で()と?を使用するとNo.05250
ねむ さん 00/03/07 15:39
 
検索・強調表示などの正規表現で、()と?を併用すると、思った通りの
動作をしない場合があります。例えば、"abc"と"abcde"にヒットさ
せたい場合、"abc(de)?"とやると、"abcde"にはヒットするのですが、
"abc"にはヒットしません。

[ ]
RE:05250 正規表現で()と?を使用するとNo.05254
番頭++ さん 00/03/07 17:08
 
>検索・強調表示などの正規表現で、()と?を併用すると、思った通りの
>動作をしない場合があります。例えば、"abc"と"abcde"にヒットさ
>せたい場合、"abc(de)?"とやると、"abcde"にはヒットするのですが、
>"abc"にはヒットしません。

abc(|de)? とか、abc|abcde ではだめですか ...

[ ]
RE:05250 正規表現で()とNo.05258
かかし さん 00/03/07 19:24
 
かかしです。

>検索・強調表示などの正規表現で、()と?を併用すると、思った通りの
>動作をしない場合があります。例えば、"abc"と"abcde"にヒットさ
>せたい場合、"abc(de)?"とやると、"abcde"にはヒットするのですが、
>"abc"にはヒットしません。

BRegIf.DLL とbregexp.DLLというのがありまして、
秀丸で使える正規表現を拡張してくれます。

それだとちゃんと選択できます。

#根本的な解決ではないのですが・・・。
#その現象は昔、私の環境でも再現してました。

両方ないとだめなのですが、後者は↓から取得できますが
http://www.hi-ho.ne.jp/babaq/index.html

もう一方はどこだったかなあ・・・。


---かかし

[ ]
RE:05258 正規表現で()とNo.05261
Arimac さん 00/03/07 23:19
 
>もう一方はどこだったかなあ・・・。

マクロライブラリ
http://hidemaru.xaxon.co.jp/library/macro.html

又は、ホームページ
http://www.urban.ne.jp/home/arimac/

にあります(^^;

# BREGEXP.DLLもPerlに合わせてバージョンアップ
# してくれないかなぁと思う今日この頃(^^;

[ ]
RE:05261 正規表現で()とNo.05264
ねむ さん 00/03/08 09:40
 
どうもありがとうございます。
さっそくインストールして使ってみます。

[ ]
RE:05250 正規表現で()と?を使用するとNo.05272
秀丸担当 さん 00/03/08 18:19
 
>検索・強調表示などの正規表現で、()と?を併用すると、思った通りの
>動作をしない場合があります。例えば、"abc"と"abcde"にヒットさ
>せたい場合、"abc(de)?"とやると、"abcde"にはヒットするのですが、
>"abc"にはヒットしません。

これはJRE32.DLLに係わる問題ですね。
かかしさんの言われる方法でできるのであればいいですが。
JRE32.DLLに関するバグ報告もいろいろあるのでそろそろ山田さんに
なんとかしてもらうように言わなくては..

[ ]
RE:05272 正規表現で()と?を使用するとNo.05300
なむnomoto さん 00/03/10 15:42
 

 秀丸担当さま
             なむnomotoです

>これはJRE32.DLLに係わる問題ですね。
>かかしさんの言われる方法でできるのであればいいですが。
>JRE32.DLLに関するバグ報告もいろいろあるのでそろそろ山田さんに
>なんとかしてもらうように言わなくては..

 横からまたお願いです。バグじゃなけど。
  JRE32.DLL が 2つ 出来てしまいました。内容が違います。
  ですが、HIDEMARUディレクトリには1つしか置けないですね。
  ですから、1つのJRE32.DLLに合体してしまう機能が欲しい
  のですが、山田さんに要望をお伝えできないでしょうか。
  AさんのDLLに BさんのDLLに 私のDLLも合体出来るようなの
  です。3人同じDLLが即座に作れたら便利です。


[ ]
RE:05300 正規表現で()と?を使用するとNo.05303
秀丸担当 さん 00/03/10 18:51
 
> 横からまたお願いです。バグじゃなけど。
>  JRE32.DLL が 2つ 出来てしまいました。内容が違います。
>  ですが、HIDEMARUディレクトリには1つしか置けないですね。
>  ですから、1つのJRE32.DLLに合体してしまう機能が欲しい
>  のですが、山田さんに要望をお伝えできないでしょうか。
>  AさんのDLLに BさんのDLLに 私のDLLも合体出来るようなの
>  です。3人同じDLLが即座に作れたら便利です。

DLLは、いわゆるプログラムなので、合体とかは容易にできません。
もう一つのJRE32.DLLとはBRegIf.DLLなどのことを指しているので
しょうか。合体にはなりませんが、全ての機能を含む最新版(?)一つ
のみを使うしかないと思います。


[ ]
RE:05303 正規表現で()と?を使用するとNo.05309
える さん 00/03/10 23:14
 
>DLLは、いわゆるプログラムなので、合体とかは容易にできません。
>もう一つのJRE32.DLLとはBRegIf.DLLなどのことを指しているので
>しょうか。合体にはなりませんが、全ての機能を含む最新版(?)一つ
>のみを使うしかないと思います。

デリゲーションモデルなんてのはいかがでしょうか?

LIBRARY xxxxxx
EXPORTS
  Initialize   ; 新しい秀丸が開くたびに呼ばれる
  Finalize     ; 秀丸が閉じるたびに呼ばれる
  Open         ; 秀丸がファイルを開くたびに呼ばれる
  Close        ; 秀丸がファイルを閉じるたびに呼ばれる
  Configure    ; その他|動作環境|編集|正規表現 にある
               ; 設定ボタンを押すと呼ばれる
  About        ; 同ダイアログ中のバージョン情報を返す
  Execute      ; 検索を実行した場合に呼ばれマッチした位置を返す

とかで外からプラッガブルに使えるものがあればよいかなぁっとか思ったりするので
すが。

秀丸の最大の欠点は他の多くのエディタにあるようなイベント駆動型のマクロが存在
しないところだと思ってます。
そんな意図が丸見えの関数群でした。(笑

[ ]
RE:05309 正規表現で()と?を使用するとNo.05323
秀丸担当 さん 00/03/13 18:27
 
>とかで外からプラッガブルに使えるものがあればよいかなぁっとか思ったりするの
>ですが。

正規表現は意図せずにそのようになっているような気がしますが。
カラー構文をプラッガブル(というのか?plugable?)なDLLにしようという案も
あったのですが、協議の結果いまの仕様となりました。


>秀丸の最大の欠点は他の多くのエディタにあるようなイベント駆動型のマクロが存
>在しないところだと思ってます。
>そんな意図が丸見えの関数群でした。(笑

イベント駆動型のマクロもたまに要望がありました。
しかしまだやっていません。やる予定もいまのところ無いです。

[ ]
RE:05303 正規表現で()と?を使用するとNo.05332
なむnomoto さん 00/03/14 00:21
 
      なむnomotoです

>DLLは、いわゆるプログラムなので、合体とかは容易にできません。
>もう一つのJRE32.DLLとはBRegIf.DLLなどのことを指しているので
>しょうか。合体にはなりませんが、全ての機能を含む最新版(?)一つ
>のみを使うしかないと思います。
>

  うう、「全ての機能を含む最新版(?)」にするのが大変で。
  JRE32x.DLL で xにa-zまで書いても使えて、26箇まで
  は大丈夫、なんて不可能でしょうか。

  私の提供するMACROにも、似た内容のJRE32.DLL がセット
  なんです。(・_;)(T_T)(・_;)トホホ

[ ]
RE:05332 正規表現で()と?を使用するとNo.05351
秀丸担当 さん 00/03/16 17:47
 
>うう、「全ての機能を含む最新版(?)」にするのが大変で。

大変というか、DLLを使用している側の人はDLLを作ることができない
ので既存のものを入手するしかありません。

>JRE32x.DLL で xにa-zまで書いても使えて、26箇まで
>は大丈夫、なんて不可能でしょうか。

いまのところは不可能です。

[ ]