[スレッド全体]

[8213] 改行について返信 削除
2016/12/28 (水) 11:28:14 アール
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
サクラエディタを使って

1@AAA
2@BBB
3@CCC
4@DDD

 省略

100@ZZZ

みたいな文を、

1@AAA


2@BBB

このように間に改行を2つ入れる事はマクロで可能ですか?
初歩的な事で申し訳ないです。


[8214] Re:改行について返信 削除
2016/12/28 (水) 19:01:22 774
Mozilla/5.0 (Windows NT 6.0; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0
置換ダイアログを開いて「正規表現(E)」にチェックを入れて
$ を \r\n\r\n に置換するのが一番簡単です。

*チェックが入らないなら正規表現DLL(bregonig.dllか BREGEXP.DLL)
  をエディタと同じフォルダにコピーするとできるようになります。
*置換する対象を選択した範囲内に限定することも(通常の手順で)できます。
*「正規表現(E)」にチェックを入れると(望まなくても) $ や \r\n 以外にも
  見た目と実際の文字が異なる特殊な記法が有効になります。
  余力があればこちらをどうぞ。
  ♦正規表現の概説
    <https://msdn.microsoft.com/ja-jp/library/cc427946.aspx>
  &#9830;正規表現 - SakuraEditorWiki
    <http://sakura.qp.land.to/?%C0%B5%B5%AC%C9%BD%B8%BD>

マクロにこだわるならたとえば次のような内容で拡張子が .js のファイルを
マクロとして登録します。(ファイルの文字コードはシフトJISで)

var selected = Editor.GetSelectedString(0);
if (! selected) {
	Editor.SelectAll();
	selected = Editor.GetSelectedString(0);
}
var replaced = selected.replace(/(\r\n?|\n)/g, "$1$1$1");
if (selected == Editor.GetSelectedString(0)) {
	Editor.InsText(replaced);
}

これも対象を選択範囲に限定して実行できます。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81