1. ホーム
  2. regex

[解決済み】Notepad++でCRLFを検索する

2022-03-25 04:51:29

質問

Notepad++ですべてのCR/LF文字を検索/置換するにはどうすればよいですか?

Microsoft Wordの特殊文字「^p」に相当するものを探しています。

どのように解決するのですか?

[\r\n]+ も動作するはずです。

2012年3月26日のアップデートで メモ帳++ 6.0 :

OMG、実際に動くようになったんだ!!!


オリジナルの回答 2008年 (Notepad++ 4.x) - 2009年~2010年~2011年 (Notepad++ 5.x)

実は、正規表現では動作しないようです...。

しかし、Notepad++ 5.xであれば、' 拡張 検索モードで \r\n . これで、すべての CRLF .

(他の方と同じ回答になってしまいますが、やはり「拡張モード」はNotepad++ 4.9、5.x以上でないと使えないようです)


2009年4月以降、Notepad++のサイトにこのトピックのwiki記事がありますね。

" 行末を入れ替え、行のレイアウトを変更する方法 "です。

(言及者 ジオージーカシー を、彼/彼女の 回答はこちら )

関連する抽出物には、以下のような検索プロセスがあります。

<ブロッククオート

単純な検索( Ctrl + F ), サーチモード = Normal

を選択することができます。 EOL を編集ウィンドウに表示します。

  • カーソルを行末に移動して、次のように入力するだけです。 シフト + 矢印
  • または、選択する EOL の右側をマウスでドラッグすると、次の行の始まりにドラッグできます。 EOL は機能しません。 を手動でコピーすることができます。 EOL で、それを Unix ファイル用のフィールドに貼り付けます ( LF -のみ)。

簡易検索(Ctrl+F)、検索モード=拡張版

Extended"オプションは以下を表示します。 \n\r をマッチする可能性のある文字として指定します。

通常の検索モードと同様に、Notepad++は正確な文字を検索しています。

検索対象 \r を検索しても何も見つかりませんが、UNIX 形式のファイルで \n となります。同様に、Macintosh 形式のファイルには \r を使用しますが \n .

簡易検索(Ctrl+F)、検索モード=正規表現

正規表現では、文字 ^$ は、マッチ文字列を行頭または行末に固定するために使用します。例えば return;$ は、同じ行に後続のテキストがない場合に発生する "return;" を検索します。アンカー文字は、すべてのファイルフォーマットで同じように機能します。

ドット・メタキャラクタは行末にマッチしません。

[Notepad++ 5.8.5でテスト済み]。 正規表現検索に明示的な \r または \n は機能しません(逆に シンティラのドキュメント ) .

明示的な(貼り付けられた)LFや、EOLが選択されたときにフィールドに配置された(見えない)EOL文字に対する検索はどちらも行いません。 高度な検索 ( Ctrl + R ) 正規表現なし

Ctrl + M は、改行にマッチするものを挿入します。これらは、置換文字列で置き換えられます。

どうしても正規表現を使う必要がある場合を除き、この方法が最も信頼性が高いのでおすすめです。

例として、ダブルスペースのファイルの2行目の改行をすべて削除するには、次のように入力します。 Ctrl + M を検索文字列のボックスに2回、置換文字列のボックスに1回入力します。

詳細検索( Ctrl + R ) を Regexp で指定します。

どちらも Ctrl + M , $ また \r\n がマッチングされます。


また、同じwikiによると Hex エディタの代替 :

  • 文書の先頭に新しい文字列を入力します。
  • 次に、以下を選択します。 ヘキサゴンモードでドキュメントを表示する .
  • 新しい行を1つ選択して Ctrl + H .
  • 置換]ダイアログボックスを表示させたまま、背景で新しい置換文字列を選択し Ctrl + C をコピーして、Replace with text inputに貼り付けてください。
  • その後、お好みで「置換」または「すべて置換」してください。

注:改行で選択された文字は、通常 0a .

Windows形式のファイルの場合、異なる値が表示されることがあります。その場合は、いつでも Edit -> EOL Conversion -> Convert to Unix Format で、置換した後に元に戻して Edit -> EOL Conversion -> Convert to Windows Format .