※サクラのマクロファイルの文字コードはSJIS(またはUTF-8(BOM付き))にすること。
// ---------- 解析用のメソッド ----------
var wsh = new ActiveXObject("WScript.Shell");
// メイン
function main()
{
var str = InputBox("値を入力してください*英大文字と小文字を区別する");
if ( str === "" ) {
log( "空なら終了" );
return;
}
// ファイルの先頭に移動
GoFileTop(0);
// 置換(オプション:2(英大文字と小文字を区別する),4(正規表現))
// 文字列を含まない行を抽出する正規表現 例)(?!.*(AAA|BBB)).*$
ReplaceAll('^(?!.*' + str + ').*$', '', 6);
// 現在の改行コードの判定
var kai = GetLineCode()
// 空白行削除
if (kai === 0) {
// 行の先頭がWindows改行コード(0 CRLF)の場合、空白行を削除
ReplaceAll('^\r\n', '', 6);
} else if (kai === 2) {
// 行の先頭がLinux改行コード(2 LF)の場合、空白行を削除
ReplaceAll('^\n', '', 6);
} else {
// 1 ・・・ CR MacOS
}
BookmarkPattern(str, 2);
// 再描画
ReDraw(0);
// ファイルの先頭に移動
GoFileTop(0);
return;
}
// サブ処理:
function log( str )
{
// 実行状況をモニタしたい場合は,ここのコメントアウトを外します。
wsh.Popup( str );
}
// ---------- 実行 ----------
main();
すべて置換(実行)
https://sakura-editor.github.io/help/HLP000293.html
文字列をすべて置換します。
置換ダイアログで [すべて置換] ボタンを押した時の動作です。
■マクロ構文
・構文: ReplaceAll( str1 :String , str2 :String , int3 :Integer );
str1 検索文字列
str2 置換文字列
int3 置換オプション(省略可能、ただしPPAマクロは省略不可)
・記録: 置換の[すべて置換]実行により記録
・解説: 引数は「置換(実行)」Replaceの引数に加えて、 int3には「すべて置換」の動作のみに影響を与えるオプションを指定できます。