置換動作の報告No.34658
いっぷく2 さん 15/12/08 21:05
 

置換ダイアログでの指定。
検索:^$
置換:
正規表現 ON  HMJRE.DLL V4.11

これで置換を実行すると無限ループに突入するようです。

秀丸エディタ 32bit Ver 8.56 Beta 19
Windows 8 64bit

[ ]
RE:34658 置換動作の報告No.34660
秀丸担当 さん 15/12/09 09:41
 

こちらで同じバージョンで確認してみたところでは、うまく再現できませんでし
た。
ヒットする文字や置換文字列の長さがゼロの場合は次に進めるように、秀丸エデ
ィタ本体側で処理しています。

新規作成したファイルに改行だけを数行入力し、
検索文字列「^$」
置換文字列「」
として、正規表現だけをON、他は全てOFFにして、全置換(置換の前に確認の一
気ではない)をしてみたところでは、改行の数だけ置換され、終わりました。

もし対象となるテキストや操作手順が上記と違う場合は教えてもらえると手がか
りになると思います。

検索文字列や置換文字列に改行文字や制御文字が含まれていると、ダイアログ中
には目に見えずに期待とは違う結果になって見える場合があります。
例えば置換ダイアログの置換文字列の「>」をクリックして「複数行」をONにし
て、置換文字列に改行を入れます。
再び「>」をクリックして「複数行」をOFFにすると、入力欄には見えない改行が
できます。
この場合、置換ダイアログの右下に赤色の文字で警告が出るので、そこに何か表
示されていたら関係しているかもしれません。

[ ]
RE:34660 置換動作の報告No.34662
いっぷく2 さん 15/12/09 10:52
 
検証ありがとうございました。

再現できませんか。。。設定が関係しているのでしょうか。

こちらの操作手順は、
・新規作成で開く
・改行を一つ入れる
・ダイアログ設定は秀丸担当様と全く一緒です。

これで全置換を押すと、
全置換処理中のダイアログが出て、置換個数がインクリメントされていきます。
個数は高速で増えていき、ほっとくと数千万になってしまいます。
スピードアップボタンはDisableで、キャンセルを押すと中断もしてくれます。

まあ、今のところ実害はないんですがそちらで再現できないということなので
どの設定が関係しているのかは知りたいところです。



木村

▼▼▼▼▼▼▼▼▼▼   Original Message   ▼▼▼▼▼▼▼▼▼
From:     秀丸担当 <xxxxxxxxxxxxxxxxxxx@maruo.co.jp>
Reply-To: xxxxxxxxxx@maruo.co.jp
To:       xxxxxxxxxxxxxx@maruo.co.jp
Date:     Wed, 09 Dec 2015 09:41:40 +0900
Subject:  hidesoft.2:34660| RE 34658 置換動作の報告


>
>こちらで同じバージョンで確認してみたところでは、うまく再現できませんでし
>た。
>ヒットする文字や置換文字列の長さがゼロの場合は次に進めるように、秀丸エデ
>ィタ本体側で処理しています。
>
>新規作成したファイルに改行だけを数行入力し、
>検索文字列「^$」
>置換文字列「」
>として、正規表現だけをON、他は全てOFFにして、全置換(置換の前に確認の一
>気ではない)をしてみたところでは、改行の数だけ置換され、終わりました。
>
>もし対象となるテキストや操作手順が上記と違う場合は教えてもらえると手がか
>りになると思います。
>
>検索文字列や置換文字列に改行文字や制御文字が含まれていると、ダイアログ中
>には目に見えずに期待とは違う結果になって見える場合があります。
>例えば置換ダイアログの置換文字列の「>」をクリックして「複数行」をONにし
>て、置換文字列に改行を入れます。
>再び「>」をクリックして「複数行」をOFFにすると、入力欄には見えない改行が
>できます。
>この場合、置換ダイアログの右下に赤色の文字で警告が出るので、そこに何か表
>示されていたら関係しているかもしれません。


---以下の内容はコミュニテックス会議室システムにより付加されました。
本文中のメールアドレスは伏せ字に変換されました。伏せ字にしたくない場合
はメールアドレスを""で囲んで書き込んでください。

[ ]
RE:34662 置換動作の報告No.34663
秀丸担当 さん 15/12/09 15:55
 

そういう条件が無いか調べてみたところ、フリーカーソルモードか、動作環境
『「行末<->次の行の先頭」移動の禁止 』がONになっているとカウントだけが上
がってしまうことがわかりました。
確かにおかしかったです。
設定等に関わらずできるように修正させていただきます。

[ ]
RE:34663 置換動作の報告No.34664
いっぷく2 さん 15/12/09 16:54
 
確かにフリーカーソルを解除すると現象はなくなりました。
ご検証ありがとうございました。

[ ]