Notepad ++のヒント:検索と置換、およびテキスト操作の例

Notepad ++は、多くの便利な機能を備えた優れた軽量テキストエディタです。 Notepad ++を使用すると、現在のファイルまたはフォルダー内の複数のファイルのテキストを再帰的に検索および置換できます。 正規表現を使用してテキストを検索および置換することもできます。

この投稿には、Notepad ++の検索と置換の例や、さまざまなシナリオに役立つその他のNotepad ++のヒントが多数含まれています。

テキストファイルのファイル名からパスを削除する

テキストファイル内のファイルの完全パスがあり、パスを削除したい場合(つまり、ファイル名のみが必要な場合)、次の検索と置換の手法を使用します。

  1. [置換]ダイアログを表示し(Ctrl + H)、次の置換方法を使用します。
  2. [検索]ボックスに「 ^.*\\
  3. 検索モードを正規表現に設定する
  4. [置換]ボックスは空白のままにします。
  5. 一致する改行のチェックを外す
  6. すべて置換をクリックします

::前::

 C:\ Users \ ramesh \ Pictures \ Screenshots \ Screenshot 90.png C:\ Users \ ramesh \ Pictures \ Screenshots \ Screenshot 97.png C:\ Users \ ramesh \ Pictures \ Screenshots \ Screenshot 10.png C:\ Users \ ramesh \ Pictures \ Screenshots \ Screenshot 15.png 

::後::

 スクリーンショット90.pngスクリーンショット97.pngスクリーンショット10.pngスクリーンショット15.png 

テキストファイルのフルパスからファイル名を削除する

フルパスからファイル名を削除するには、次の検索演算子を使用します。

  • 検索結果: \\[^\\]+$
  • 置き換え:空のままにする
  • 検索モードを正規表現に設定する
  • 一致する改行のチェックを外す
  • すべて置換をクリックします

::前::

 D:\ Tools \ SysInternals \ accesschk.exe D:\ Tools \ SysInternals \ AccessEnum.exe D:\ Tools \ NirSoft \ AddrView.exe D:\ Tools \ Others \ activehotkeys.exe 

::後::

$config[ads_text6] not found
 D:\ Tools \ SysInternals D:\ Tools \ SysInternals D:\ Tools \ NirSoft D:\ Tools \ Others 

ヒント:フォルダーパスの後にスラッシュが必要な場合は、代わりに次の正規表現検索を使用できます。

  • 何を見つける: (.*\\).*
  • 置き換え: \1

各行の先頭から固定数の文字を削除します

テキストファイルの各行の先頭にある固定数の文字を削除するには、次の正規表現検索と置換クエリを使用します。

  1. 何を見つける: ^.{11}(.*)$
  2. 置き換え: $1
  3. 検索モードを正規表現に設定する
  4. 一致する改行のチェックを外す
  5. すべて置換をクリックします

これにより、各行の先頭から最初の11文字が削除されます。

::前::

 ファイルパス:D:\ Tools \ SysInternals \ accesschk.exeファイルパス:D:\ Tools \ SysInternals \ AccessEnum.exeファイルパス:D:\ Tools \ NirSoft \ AddrView.exeファイルパス:D:\ Tools \ Others \ activehotkeys 。EXE 

::後::

 D:\ Tools \ SysInternals \ accesschk.exe D:\ Tools \ SysInternals \ AccessEnum.exe D:\ Tools \ NirSoft \ AddrView.exe D:\ Tools \ Others \ activehotkeys.exe 

文字数を超える文字を削除する

テキストファイルの文字数を超える文字を削除するには、次のようにします。

  1. 何を見つける: ^.{19}\K.*$
  2. 置換後:空白のまま
  3. 検索モードを正規表現に設定する
  4. 一致する改行のチェックを外す
  5. すべて置換をクリックします

これにより、各行で19文字を超える文字が削除されます。

::前::

 クイックブラウンフォックスは怠惰ですクイックブラウンフォックスはとてもかわいいですクイックブラウンフォックスは怠惰な犬を飛び越えます 

::後::

 クイックブラウンフォックスクイックブラウンフォックスクイックブラウンフォックス 

テキストファイルの各行から特定の文字の後のテキストを削除する

ハイフンなどの特定の文字ののテキストをテキストファイルの各行から削除するには 、次のコマンドを使用します。

  1. 何を見つける: (.+)\s*-\s*(.+)
  2. 置き換え: $1
  3. 検索モードを正規表現に設定する
  4. 一致する改行のチェックを外す
  5. すべて置換をクリックします

::前::

 accesschk.exe-SysInternalsからAccessEnum.exe-SysInternals AddrView.exeから-NirSoft activehotkeys.exeから-別のベンダーから 

::後::

 accesschk.exe AccessEnum.exe AddrView.exe activehotkeys.exe 

文字(ハイフンなど)ののテキストを削除するには、置換フィールドで$2を使用します。

  1. 何を見つける: (.+)\s*-\s*(.+)
  2. 置き換え: $2

テキストファイルの各行から先頭または末尾のスペースを削除する

テキストファイルの各行から末尾または先頭の空白を削除するには、空白の操作メニューを使用します。

Notepad ++の[編集]メニューから、[ 空白の操作 ]をクリックします。

3つのオプションのいずれかを選択します。

  • 後続スペースのトリム
  • 先頭のスペースをトリミング
  • 先頭と末尾のスペースをトリミングする

テキストファイルの空白行を削除する

テキストファイルの空/空白行を削除するには、Notepad ++の[ 編集 ]メニューから[ 行操作 ]を選択し、[ 空行の削除 ]をクリックします。

空白文字または空白を含む行も削除するには、代わりに[ 空行を削除(空白文字を含む) ]オプションクリックします。

::前:

 クイックブラウンフォックスは怠惰ですクイックブラウンフォックスはとてもかわいいですクイックブラウンフォックスは怠惰な犬を飛び越えます 

::後::

 クイックブラウンフォックスは怠惰ですクイックブラウンフォックスはとてもかわいいですクイックブラウンフォックスは怠惰な犬を飛び越えます 

選択した行の空の行のみを削除します

上記のコマンドは、テキストファイル全体の空の行を削除することに注意してください。 テキスト選択内でのみ空の行を削除するには、次の検索演算子を使用します。

  1. 空の行を削除する行を選択します。
  2. 置換ダイアログを表示します(Ctrl + H)
  3. [ 検索する文字 \n\rボックスに「 \n\r
  4. 置換後のボックスを空のままにします
  5. 選択中チェックボックスを有効にする
  6. 拡張する検索モードを選択
  7. すべて置換をクリックします

それでおしまい! ファイル全体ではなく、 選択した行内の空の行のみを削除します。


カンマまたは記号のn番目の出現後のテキストを削除

各行にカンマまたはその他の記号で区切られたテキストがあるとします。 以下の例:

::前::

 ------------------------------名前、住所、ピン、ランドマーク------------- ----------------- ramesh、10 san jose avenue、11011、美術館ピートの近く、1 sf marg、45089、子供公園ジョンの近く、7 rcr、11909、地下鉄駅の近く 

3番目のカンマの後のテキストを削除するには、次の検索および置換検索演算子を使用します。

  1. 何を見つける: ^([^, ]*, [^, ]*, [^, ]*), .*$
  2. 置き換え: $1
  3. 検索モードを正規表現に設定する
  4. 一致する改行のチェックを外す
  5. すべて置換をクリックします

::後::

 --------------------------名前、アドレス、ピン------------------- ------- ramesh、10 san jose avenue、11011 pete、1 sf marg、45089 john、7 rcr、11909 

テキストファイルの各行の前に単語または語句を付ける

テキストファイルの各行の先頭に単語または語句(プレフィックス)を追加するには、次の検索および置換演算子を使用します。

  1. 何を見つける: ^
  2. 置換: Some word or phrase
  3. 検索モードを正規表現に設定する
  4. 一致する改行のチェックを外す
  5. すべて置換をクリックします

上記は、HOSTSファイルを作成して特定の広告サーバーのリストをブロックする場合に特に役立ちます。 0.0.0.0を末尾にスペースを付けて「 置換:」テキストボックスに入力し、[すべて置換]をクリックします。 これにより、テキストファイルの各行(広告サーバー)のプレフィックス文字列が追加されます。

::前::

 ssp.adriver.ru r.adrolays.de adrotate.se www.adrotate.net adrunnr.com 

::後::

 0.0.0.0 ssp.adriver.ru 0.0.0.0 r.adrolays.de 0.0.0.0 adrotate.se 0.0.0.0 www.adrotate.net 0.0.0.0 adrunnr.com 

テキストファイルの各行に単語または語句のサフィックスを付ける

テキストファイルの各行の終わりに単語または語句(サフィックス)を追加するには、次の検索および置換演算子を使用します。

  1. 何を見つける: $
  2. 置換: Some word or phrase
  3. 検索モードを正規表現に設定する
  4. 一致する改行のチェックを外す
  5. すべて置換をクリックします

::前::

 D:\ Tools \ SysInternals \ accesschk.exe D:\ Tools \ SysInternals \ AccessEnum.exe D:\ Tools \ SysInternals \ Procexp.exe 

::後::

$config[ads_text6] not found
 D:\ Tools \ SysInternals \ accesschk.exe(Windows SysInternalsから)D:\ Tools \ SysInternals \ AccessEnum.exe(Windows SysInternalsから)D:\ Tools \ SysInternals \ Procexp.exe(Windows SysInternalsから) 

行をソートせずにNotepad ++を使用してテキストファイルの重複行を削除する

をソートせずに Notepad ++ 使用してテキストファイルの重複行を削除するには、次の検索および置換演算子を使用します。

  1. 何を見つける: ^(.*?)$\s+?^(?=.*^\1$)
  2. 置換後:空白のまま
  3. 検索モードを正規表現に設定する
  4. *有効* 改行に一致
  5. すべて置換をクリックします

これにより、すべての重複する行が削除され、元の行が残ります。 おまけとして、空白行も自動的に削除されます。

重要:これを機能させるには、 一致改行を有効にする必要があります ステマへのクレジット

上記は、行のソートを必要としない素晴らしい方法です。 重複する行はテキストファイルのどこにでも配置でき、並べ替えは行われません。

::前::

 12345 23456 34567 45678 12345 23456 34567 45678 12345 23456 34567 45678 

::後::

 12345 23456 34567 45678 

連続する重複行を削除する

重複する行がお互いの直後にある場合、 連続する重複する行を削除するには、Notepad ++の[ 編集 ]メニューから[ 行の操作 ]をクリックし、[ 連続する重複する行を削除 ]を選択します。

::前::

 12345 12345 12345 23456 23456 34567 34567 45678 45678 

::後::

 12345 23456 34567 45678 

特定の文字に改行(復帰)を挿入する

カンマの後など、特定の文字の後ろに改行(復帰)を挿入するには、次の検索および置換演算子を使用します。

  1. 何を見つける: ,
  2. 置き換え: \r\n
  3. 検索モードを拡張に設定します
  4. すべて置換をクリックします

上記の検索と置換操作は、コンマが出現する場所に新しい行を追加します。

::前::

 Cecilia Chapman、711-2880 Nulla St.、Mankato Mississippi 96522、(257)563-7401、Iris Watson、PO Box 283 8562 Fusce Rd。 

::後::

 Cecilia Chapman 711-2880 Nulla St. Mankato Mississippi 96522(257)563-7401 Iris Watson PO Box 283 8562 Fusce Rd。 

すべての行の後に末尾のコンマを保持したい場合は、「置換:」テキストボックスで, \r\n使用します。


関連記事