Notepad ++は、文字列を検索して改行で置き換えます


212

検索および置換する特定の文字列があるシナリオを考えます。改行文字(または文字シーケンス)を含む新しい文字列に置き換えます。

abc123 xyz456-blah
fsafd23 xyz456-green
89hjkf23 xyz456-red
afdsa23 xyz456-yellow
abaac123 xyz456-orange

上記のシナリオでは、「 xyz」を見つけてスペースを復帰/改行に置き換えたいと思います。

結果は次のようになります。

abc123
xyz456-blah
fsafd23
xyz456-green
89hjkf23
xyz456-red
   ︙

等...

質問: Notepad ++を使用してこれをどのように簡単に達成できますか?このコマンドを簡単に実行することをお勧めする他のツールはありますか?

回答:


279

Notepad ++でも問題ありません。

検索文字列:

 xyz
の前のスペースに注意してくださいxyz

置換文字列:

\ r \ nxyz

また、設定する必要があります「検索モード」をするために「拡張」(左下のグループボックスに置き換えメモ帳++名誉はエスケープコードするようダイアログ)。


背景:「\ r \ n」は、Windowsの新しい行の標準であるキャリッジリターンのエスケープコードです。Unixスタイルのシステムは、単純に\ n(改行)を使用します。Notepad ++を含むほとんどのIDEは両方のスタイルを理解し、それぞれを新しい行で表しますが、コアWindowsユーティリティは\ nを\ r \ nに相当するものとして理解しないため、ファイルが目的の場合は通常後者が最適ですWindows環境で使用されます。


2
\ r \ n = Windowsの改行構文。ただし、普通の古いメモ帳以外のすべての場合、改行の場合は\ nだけを受け入れます(これもより一般的です)。
マチャ

3
「より従来型」というフレーズは誤解を招くものです。「\ r \ n」はWindowsの標準です。多くのエディターとIDEがたまたま「\ n」で終わるUnix / Linux標準行を認識し、それに応じてドキュメントを表示するだけです。「\ n」については、それをより一般的にするものはありません。
ブライアンレイシー

正直に言うと、Win / DOSバージョンのほうが理にかなっています。「\ r」は「キャリッジリターン、または「キャリッジ/カーソルを行の先頭に戻す」」を意味し、「\ n」は「キャリッジ/カーソルを1行進める」ことを意味します。もちろん、Unixは20年前に登場したので、その意味で標準を破ったのはマイクロソフトだと思います。
ブライアンレイシー

7
他の回答に指定されているこの文句を言わない仕事、あなたは、検索モードを設定しない限り:superuser.com/questions/34451/...を
codeulike

7
リテラル文字列 "\ r \ n"を実際の新しい行に置き換えようとする場合、次のことを行う必要がありました。検索モードを通常に設定し、\ r \ nを***で検索/置換します。次に、検索モードをExtendedに設定し、***を\ r \ nで検索/置換します。
goku_da_master

61

Notepad ++では、非常に簡単です...

  • 検索:xyz
  • 置換:\ n


  • 検索モード:拡張(\ n、\ tなど)

トリックは、検索モードを設定することです。


1
この答えは私のために働いたが、受け入れられた人はそうではなかった。Ver 5.8.6
bdwakefield

はい、同じここでは受け入れ答えは、拡張モードを使用して指定されていませんでした...
アンディ・

なぜ\r\n(ではなく\n)?
ピーターモーテンセン

5

テキストフィールドに直接入力できないS&Ring文字(タブや改行など)を少しbitします。すでにその文字が含まれているドキュメント内のどこかを見つけて、コピーし、置換フィールドに貼り付けます。

したがって、この例では、1行の先頭から開始し、クリックして、前の行の最後までドラッグし、それをコピーして、[置換]ダイアログに貼り付けます。


5

[置換]ダイアログで、[検索モード]で[拡張]が選択されていることを確認します。次に、検索ボックスに「xyz」と入力し、「\ n」に置き換えます。


1
なぜ\r\n(ではなく\n)?
ピーターモーテンセン

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