「複数置換」の版間の差分

Noah (トーク | 投稿記録)
新規作成
 
Noah (トーク | 投稿記録)
マクロの実行結果の説明やフォルダの階層の説明を追加
 
(2人の利用者による、間の9版が非表示)
1行目: 1行目:
= 概要 =
== 概要 ==
一度に複数の置換処理を行うマクロです。<br>
一度に複数の置換処理を行うマクロです。
 
置換前の文字列と置換後の文字列はテキストファイルに記載しておき、そのルールに従い置換を行います。
置換前の文字列と置換後の文字列はテキストファイルに記載しておき、そのルールに従い置換を行います。


= ダウンロード =
例えば、同封されている「機種依存文字を置換」を実行すると下記のように①・②・③を(1)・(2)・(3)にまとめて置換します。
[[ファイル:MultiReplace.zip]]<br>
 
置換前


= 使い方 =
<pre>
①テスト1
②テスト2
③テスト3
</pre>
 
置換後
 
<pre>
(1)テスト1
(2)テスト2
(3)テスト3
</pre>
 
よく行う置換処理をあらかじめ記載しておくことで、置換ダイアログを開かなくても置換が行えます。
 
== ダウンロード ==
[[ファイル:MultiReplace.zip]]
 
== 使い方 ==
ダウンロードしたファイルを解凍すると「複数置換.js」と「置換テンプレート」フォルダがありますので、これらをMacrosフォルダ内に配置してください。
ダウンロードしたファイルを解凍すると「複数置換.js」と「置換テンプレート」フォルダがありますので、これらをMacrosフォルダ内に配置してください。


次に、置換文字列を定義します。<br>
<pre>
置換文字列はテキストファイル(拡張子が「txt」のファイル)に記載するため、「置換テンプレート」フォルダにテキストファイルを作成して下さい。<br>
Mery
このとき、テキストファイルの文字コードは「Shift_JIS」にしてください(FileSystemObjectがShift_JISかUTF-16にしか対応していないため)。
└Macros
 ├複数置換.js
 └置換テンプレート
</pre>
 
次に、どのように置換するかをテキストファイルに定義します。
 
置換ルールを追加する場合は「置換テンプレート」フォルダに新しくテキストファイル(拡張子が「txt」のファイル)を作成して下さい。
 
また、テキストファイルの文字コードは「Shift_JIS」、Unicode(サロゲートやEmojiなど)を含む場合は「UTF-16LE (BOM付き)」にしてください(UTF-8 (BOM無し)はダメ)。


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


<pre>
<pre>
(置換前の文字列)@(置換後の文字列)
置換前の文字列@置換後の文字列
</pre>
</pre>


33行目: 63行目:
</pre>
</pre>


置換ルールを複数定義したい場合はテキストファイルを複数作成してください。
正規表現が使用できます。正規表現のメタ文字はメタ文字として扱われますので注意してください。
 
例えば、(1)を①に置換した場合、下記になります。
 
※(, ) はメタ文字なため、「\」でエスケープする必要があります。
 
<pre>
\(1\)@①
</pre>
 
例えば、実用性はさておき次のようにすると0~9の数値を削除することができます。
 
<pre>
[0-9]*@
</pre>
 
これらの作業後、マクロを実行するとポップアップメニューが表示されます。
ポップアップのメニュー名はテキストファイルのファイル名になります。


これらの作業後、マクロを実行するとポップアップメニューが表示されます(テンプレートファイルが1つだけの場合、ポップアップメニューは表示されず、その1つのルールで置換します)。<br>
置換したいテンプレートファイルを選択すると、テキストファイルに記載されたルールに従い置換を行います。
置換したいテンプレートファイルを選択するとそのルールに従い置換を行います。


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


= 更新履歴 =
== 変更履歴 ==
* 2019/03/03 初版
* 1.0.1 (2023-09-23)
** 正規表現にちゃんと対応
* 1.0.0 (2019-03-03)
** 初版
スポンサーリンク