複数置換

提供: MeryWiki
2023年9月23日 (土) 20:35時点におけるNoah (トーク | 投稿記録)による版 (正規表現にちゃんと対応)
ナビゲーションに移動 検索に移動

概要

一度に複数の置換処理を行うマクロです。

置換前の文字列と置換後の文字列はテキストファイルに記載しておき、そのルールに従い置換を行います。

ダウンロード

ファイル:MultiReplace.zip

使い方

ダウンロードしたファイルを解凍すると「複数置換.js」と「置換テンプレート」フォルダがありますので、これらをMacrosフォルダ内に配置してください。

次に、置換文字列を定義します。

置換文字列はテキストファイル(拡張子が「txt」のファイル)に記載するため、「置換テンプレート」フォルダにテキストファイルを作成して下さい。

また、テキストファイルの文字コードは「Shift_JIS」、Unicode(サロゲートやEmojiなど)を含む場合は「UTF-16LE (BOM付き)」にしてください(UTF-8 (BOM無し)はダメ)。

次にテキストファイルに置換前の文字列と置換後の文字列を「@」マークで区切り下記のフォーマットで記載してください。

(置換前の文字列)@(置換後の文字列)

例えば、①を(1)に置換したい場合は下記になります。

①@(1)

②を(2)、③を(3)に一度に置換したい場合、改行で区切ってください。

①@(1)
②@(2)
③@(3)

正規表現が使用できます。正規表現のメタ文字はメタ文字として扱われますので注意してください。

例えば、実用性はさておき次のようにすると0~9の数値を削除することができます。

[0-9]*@

これらの作業後、マクロを実行するとポップアップメニューが表示されます。 ポップアップのメニュー名はテキストファイルのファイル名になります。

置換したいテンプレートファイルを選択すると、テキストファイルに記載されたルールに従い置換を行います。

もし、区切り文字の「@」を置換したい場合、「複数置換.js」の区切り文字を変更して対応してください(ちゃんと対応するならエスケープ処理をするべきですが面倒なのでやってません)。

// 区切り文字
var separator = "@"; // ← ここを変更

更新履歴

  • 2023/09/23 正規表現にちゃんと対応
  • 2019/03/03 初版
スポンサーリンク