正規表現での置換についてNo.03136
zoom さん 02/05/18 21:32
 
はじめましてzoomです

行末の不要なタブ/空白を削除するために以下のようなマクロを
作りましたがある特定の行を処理する時に「もっと簡単にして下
さい」エラーが表示されます。
replaceallfast  "[  \t]+$","", regular;

特定の行とは以下のものです
"a       a"
(aとaの間は半角空白で約150個
ただし、半角空白が約100個の場合は発生しません
おそらくキャラクタ文字の間に半角空白がある一定の個数以上
あった場合にエラーとなっているようです。
何かいい解決策があれば教えてください。

[ ]
RE:03136 正規表現での置換についてNo.03137
アルビレオ さん 02/05/19 04:08
 
>行末の不要なタブ/空白を削除するために以下のようなマクロを
<略>
>何かいい解決策があれば教えてください。

その他→ファイルタイプ別の設定→保存・読込み→保存するとき行末の空白を除去する
をONにして保存、
編集→最初からやり直し
ぐらいかなあ。

行末の空白の除去をマクロで設定するには
config "xStripTrail:1";
でいけると思います。
いったん保存しないといけないのがアレですが。

[ ]
RE:03136 正規表現での置換についてNo.03138
ひろ さん 02/05/19 12:55
 
 zoom さん今日は、ひろです。
> 行末の不要なタブ/空白を削除するために以下のようなマクロを
> 作りましたがある特定の行を処理する時に「もっと簡単にして下
> さい」エラーが表示されます。
> replaceallfast  "[  \t]+$","", regular;
 上手くいかないのは、秀丸か JRE32.DLL に問題、若しくは仕様 (文字数制
限) があると思うのですが、次のマクロでできます。
//-------------------------------------------------------------------
disabledraw;
gofileend;
setreplace "";
setsearch "[ \\t]$",20;//マクロ内での正規表現なので、\\n の方がベター?
while(1){
  findup;
  if( !result )break;
}

[ ]
RE:03138 正規表現での置換についてNo.03139
ENCODINGSHIFTJIS さん 02/05/20 13:44
 
その他では
正規表現パワーアップDLL(BRegIf.DLL)
http://hide.maruo.co.jp/lib/macro/bregif2.html

秀丸エディタが標準で使用している山田和夫氏作成のJRE32.DLLを
Baba氏作成のPerl5の正規表現パワーを持った BREGEXP.DLL
に すり替える、と 最初の マクロが通ります。

[ ]
RE:03139 正規表現での置換についてNo.03148
zoom さん 02/05/22 09:13
 
皆さん色々情報ありがとうございました。
試してみます。

[ ]
RE:03148 正規表現での置換についてNo.03152
ひろ さん 02/05/22 12:44
 
 zoom さん今日は、ひろです。
> 皆さん色々情報ありがとうございました。
 zoom さんは納得されたようですが、結局これはバグ、仕様のどちらなので
しょうか?→秀丸担当さん

[ ]
RE:03152 正規表現での置換についてNo.03199
ひろ さん 02/06/20 16:42
 
 秀丸担当さん今日は、ひろです。
> 結局これはバグ、仕様のどちらなので
> しょうか?→秀丸担当さん
 フォローがないのはやはり悲しい(;_;)。

[ ]
RE:03199 正規表現での置換についてNo.03200
秀丸担当 さん 02/06/21 16:53
 
>> 結局これはバグ、仕様のどちらなので
>> しょうか?→秀丸担当さん
> フォローがないのはやはり悲しい(;_;)。

フォローが遅れてすみません。
これはjre32.dllのバグであると思うのですが、秀丸としては修正が
むずかしいので、仕様というか、このままになっています。

[ ]
RE:03200 正規表現での置換についてNo.03201
ひろ さん 02/06/21 19:12
 
 秀丸担当さん今日は、ひろです。
> これはjre32.dllのバグであると思うのですが、秀丸としては修正が
> むずかしいので、仕様というか、このままになっています。
 ご説明有り難うございました。

[ ]