メモ帳++。異なる文字を対応する文字に一度に置き換える方法は?


3

メモ帳++で複数の異なる文字を見つけて、テキスト全体で一度に対応する文字に置き換える方法は?たとえば、置き換えたい32文字があります。だから私は「À」のような文字を持っています、そしてそれを文字「A」に置き換えたいのです。次に、「Æ」のような文字があるので、それを「Ж」という文字に置き換えます。一般的に、私は32のそのような文字を持っていて、毎回同じ操作をする必要があります。一度にこれを行う方法はありますか?

Image demonstrating request

回答:


1

時々私は使ったことがある sharktime.comからの交換 。それはかなりうまくいきます。あなたはそれをインストールして、それからあなたが望むように変更するのと同じくらい多くの文字を示すことができます。

それは違います プラグイン スタイルの解決策が、それは動作します。お役に立てれば!

It is very simple to use. This is a before/after image


1
あなたがどんなプログラムを意味しているか見るために彼らがリンクの上に彼らのマウスをホバーする必要がないようにポストのプログラムの名前を言及することは常に良いです。
barlop

0

この 前の質問は答えを提供します。ショートバージョンは、プラグインのないNotepad ++の中では、検索と置換が機能するために不可能です。

使ってみる sed または類似。


0

PCREをサポートするNotepad ++ 6の新しいRegExエンジンでさえ( ソース )、正直なところはありません(つまり、線形の複雑さを伴う) そして 信頼性の高い(つまり、動作が保証されている)アプローチで、これを1回で実現できます。 検索&交換する 、もちろん、シングル ファイル内で検索

君は できる ただし、これを使用して達成する ファイル内で検索 2回

  1. を追加 置換行列 古い文字が出現するたびに、

    Find what:    ([ÌÍÎÏÐÑ])
    Replace with: ``\1`ÌH`ÍO`ÎΠ`ÏP`ÐC`ÑT``
    Search Mode:  Regular Expression
    

    これは fooÌbarfoo``Ì`ÌH`ÍO`ÎΠ`ÏP`ÐC`ÑT``bar、 例えば。

  2. それぞれの古い文字(と 置換行列 対応する新しい文字で)

    Find what:    ``(.).*?`\1(.).*?``
    Replace with: \2
    Search Mode:  Regular Expression
    

    これは foo``Ì`ÌH`ÍO`ÎΠ`ÏP`ÐC`ÑT``barH、 例えば。

にアップグレードする必要があることに注意してください メモ帳++ 6.0以上 このため。正規表現自体も古い正規表現エンジンでも動作するはずですが、一般的にマルチバイト文字がめちゃくちゃになるバグがあります。

使い方

    • 文字セット ([ÌÍÎÏÐÑ]) これら5文字のいずれかと一致します。

      括弧はこれを最初の部分式にします(次の項目を参照)。

    • \1 最初の部分式、つまり置き換えたい文字の一致を表します。

    • 他のすべての文字は文字通りに扱われます。

    • の選択 ` 区切り文字は任意です。あなたはあなたが望む他のどんな文字も使うことができます。

    • (.) の後の最初の文字に一致 ``

      括弧はこれを最初の部分式に変えます。

    • .*? できるだけ少ない文字と一致します。

    • `\1 象徴する ` 最初の部分式、つまり置き換えたい文字が一致します。

    • (.) 置き換えたい文字の後の最初の文字と一致します。私たちのデザインでは、これはその置き換え文字です。

      括弧はこれを2番目の部分式に変えます。

    • .*?`` 最後まで可能な限り少ない文字数にマッチ `` が発生します。

正規表現の詳細については、以下を参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.