原稿の数字が半角と全角が不統一、一気に全部半角にしたいのだがといった場合を考えてみましょう。数字を半角に統一するなら「1」→「1」、「2」→「2」と置換を行えば良いのですが10回も置換するのは何ともやり切れません。どうにかならないでしょうか。
こんな時はPerlやsedを知っていれば何でもありません。Perlならば
tr/0-9/0-9/;
とやるだけですね。
これと同じことを秀丸でやりたいのですが実は私もできません。もちろんマクロを使えば同じ動作をさせることは可能です。でもマクロは面倒…。
設問のケースなら手軽にキーボードマクロで可能です。キーボードマクロ部分はたった2STEPです。
準備
メニューの動作環境ダイアログを出します。動作環境ダイアログの を選び「検索での表示」のラジオボタンを「点滅表示」ではなく「範囲選択」にする。(デフォルトはたしか「点滅表示」だったような気がする)
でこうしておくと検索結果の文字列が選択状態になります。
キーボードマクロ
後はキーボードマクロを再生するだけです。
正規表現を“[0-9A-Za-z]+”にすれば全角の英数が対処になります。もっとも和文中に含まれる全角の英文を半角に直すなどの場面では全角英数間に含まれる空白や記号をどうするか工夫しないと実際的ではないでしょうね。正規表現は“[0-9A-Za-z,. −’]+”といった感じになるのかな?実際にやってみて調整してください。
といった方法も何かの時に役立つかも知れません。
半角英数記号を全角にする場合は[全角カタカナに変換]でも[全角ひらがなに変換]でも同じ結果になります。
でもこううまくいくケースばかりじゃないですね。たとえば漢数字を洋数字に変換なんて場合はだめですし、句読点を“、。”から“,.”に一回で直したいなんてのもだめですね。
もっと欲張りに複数の置換を一気に行うことをマクロで考えましょう。これを説明すると長くなるのでこれは次回以降で解説します。