Notepad ++を使用して、改行をコンマ区切り文字で置き換えますか?


165

Notepad ++に関する質問があります。

Notepad ++で以下の単語をどのように取ることができますか(別の行にあります)

Apples
Apricots
Pear
Avocados
Bananas

そして、それらをそれぞれの最後にカンマの付いた段落に変えますか?このような:

Apples, Apricots, Pear, Avocados, Bananas

回答:


324

検索と置換ダイアログを開きます(CTRL+を押しますH)。

次にRegular expression、下部の[検索モード]セクションで選択します。

Find whatフィールドにこれを入力します。[\r\n]+

Replace with

コンマの後にスペースがあります。

これは次のような行も置き換えます

Apples

Apricots
Pear

Avocados
Bananas

空の行があるところ。

行の末尾に空白がある場合は、最初にそれらを削除する必要があります。これを達成する最も簡単な方法は

EDIT -> Blank Operations -> Trim Trailing Space

または

TextFX -> TextFX Edit -> Trim trailing spaces

必ず検索モードを「正規表現」に設定してください。


行の末尾にスペースがある場合は、その可能性があり_*[\r\n]+ます。余分なコンマに変わった空白行を処理するには、正規表現検索を実行して,_[,_]+で置き換えることができます,_。あるいは、TextFxパッケージには、コンマを追加する前に使用できるdelete blanks linesコマンドがあります。(これらのコードブロックでアンダースコアをスペースに変更することに注意してください。)
AdrianHHH 2013

はい、あなたはとても正しいです。私はただミニマルな答えを出そうとしていました。多分私はその時答えを編集するべきです。

2
これは機能しません。「0件が置換されました」と表示されます。
Iain Samuel McLean Elder

3
@IainElder、検索モードは「通常」または「拡張」ではなく「正規表現」に設定する必要があります。
Scott Lawrence

Iainと同じ結果が得られました。
dhochee 2016

34

マクロやその他のものがなくても、Notepad ++で同様の文字列リストを使用すると、次のように機能しました。

  1. 編集->空白の操作-> EOLをクリックしてスペースを空けます[すべてのアイテムは「スペース」で区切られた1行になっているはずです]

  2. 任意の「スペース」を選択し、すべて置換(「、」で)


シンプルでエレガント、素敵
レゲエギター2014

@trishul本当にいい。
himanshupareek66 2014年

32

マクロを使用したfapDaddyの答えは、私を正しい方向に向けました。

これが私にとってうまくいったことです。

  1. 最初のデータ項目の後にカーソルを置きます。 ここに画像の説明を入力してください

  2. メニューの「マクロ>記録開始」をクリックします。 ここに画像の説明を入力してください

  3. このシーケンスを入力しますCommaSpaceDeleteEndここに画像の説明を入力してください

  4. メニューの[マクロ]> [記録の停止]をクリックします。 ここに画像の説明を入力してください

  5. メニューの[マクロ]> [マクロを複数回実行...]をクリックします。 ここに画像の説明を入力してください

  6. 「ファイルの終わりまで実行」をクリックし、「実行」をクリックします。 ここに画像の説明を入力してください

  7. 末尾の文字をすべて削除します。 ここに画像の説明を入力してください

  8. できた!

ここに画像の説明を入力してください


5
この方法は、数千のデータ項目に対して低速です。
Iain Samuel McLean Elder

すばらしい答えです。おかげで:)
ピーターT.

そのような素晴らしい情報は、多くの同様の状況で役立ちます。ありがとう!
Moin

情報を共有していただきありがとうございます。それは面白い。
アイアンマン2018年

4

Notepad ++ 5.9の場合

  1. 押してCtrlキー+ H
  2. 拡張検索モードを選択(\ n、\ r、\ t、\ o、\ x ...)
  3. Find what:\ r \ nと入力します
  4. と交換してください入力します
  5. Replace_Allが必要な結果を取得するはずです。

3
この回答は受け入れられた回答を繰り返しており、この回答はNotepad ++の旧バージョンを指し、バージョン7.4.xが利用可能になりました。Stack Overflowへようこそ。新しい情報を提供するか、新しい洞察を提供してください。既存の回答を繰り返すことは役に立ちません。
AdrianHHH 2017年

nppの新しいバージョンの場合、これはこれを行うためのより良い方法です。
nurdyguy

これが最も簡単な答えです。改行をカンマで置き換えるためだけに正規表現モードに入る必要はありません。N ++は実際には正しく機能しますが、他のエディターは "\ n"をキャリッジリターンとラインフィードとして解釈するため、最初は混乱しました。
BrianVPS

3

後にカーソルを置きリンゴの下で、マクロを選択し、タブの記録開始を。カンマ()文字、スペース()文字を入力し、Endキーを押して、[マクロ]タブで[ 記録の停止 ]を選択します。

Ctrl + Shift + Pでシングル再生。


そのヒントをありがとう。5000 ++の単語がある場合はどうなりますか?それらすべてに対して個別にマクロを実行する必要がありますか?より簡単な方法はありますか?
user2231530 2013

将来同様のタスクを実行する必要がある場合は、そのためのスクリプトを作成することをお勧めします。簡単な方法は、おそらく「マクロ」タブに移動して、マクロを複数回実行することを選択することです。数秒で完了します。
viclim 2013

+1あなたの答えは私を正しい方向に向けました。で、私の答えは、私は私のために働いまさに文書化。
Iain Samuel McLean Elder

2

これは奇妙に聞こえるかもしれませんが、テキスト全体をコピーしてFirefoxの検索バーに貼り付け、それをメモ帳++に再度貼り付けることで、次の行を削除できます

ステップ1

ステップ2


1
この答えを改善してください。画像へのリンクは役に立ちません。
2016

2

Chromeの検索バーを使用する

1押しCTRL F
でコピーしたテキスト2は、ペースト検索バー
3プレスがCTRL A続いCTRL C検索から再びテキストをコピーする
には、ペースト4をメモ帳+ +
5-置き換える'space'','

画像をクリックしてください
画像をクリックしてください


0

cc.rnl ', 'ConyEdit(プラグイン)のコマンドラインを使用して、新しい行を必要な内容に置き換えることができます。


0

との正規表現の一致\s+は私のために働いた:

ここに画像の説明を入力してください


ところで:正規表現のと一致する$^はずですが、代わりにと一致し^$ます。
user3673

これを実現する最も簡単な方法は、(スクリーンショットの)「正規表現」オプションのすぐ上にある「拡張」オプションを使用することです。
nurdyguy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.