Замініть нові рядки на роздільник комами на Блокнот ++?


165

У мене запитання «Блокнот ++».

Як я можу взяти наведені нижче слова в Блокноті ++ (що знаходиться в різних рядках)

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 містить команду видалення рядків-заготовок, яку можна використовувати перед додаванням коми. (Зверніть увагу на зміну підкреслення пробілів у цих кодових блоках.)
AdrianHHH

так, ви дуже правильні. Я просто намагався дати мінімалістичну відповідь. Можливо, я повинен тоді відредагувати відповідь.

2
Це не працює для мене: я бачу, що "0 випадків було замінено".
Ієн Самуель Маклін Старійшина

3
@IainElder, режим пошуку повинен бути встановлений на "Регулярний вираз" замість "Звичайний" або "Розширений".
Скотт Лоуренс

У мене був такий самий результат, як у Іена.
dhochee

34

Ось що для мене спрацювало з аналогічним списком рядків у Notepad ++ без будь-яких макросів чи чогось іншого:

  1. Клацніть Редагувати -> Пусті операції -> EOL для пробілу [Усі елементи тепер повинні бути в одному рядку, розділеному "пробілом"]

  2. Виберіть будь-який 'пробіл' і виконайте Замінити все (на ',')


Просто і елегантно, приємно
reggaeguitar

@trishul Дійсно приємно.
himanshupareek66

32

Відповідь fapDaddy за допомогою макросу вказала мені в правильному напрямку.

Ось саме те, що працювало для мене.

  1. Помістіть курсор після першого елемента даних. введіть тут опис зображення

  2. У меню натисніть "Макрос> Почати запис". введіть тут опис зображення

  3. Введіть цю послідовність: Comma, Space, Delete, End.введіть тут опис зображення

  4. У меню натисніть "Макрос> Зупинити запис". введіть тут опис зображення

  5. У меню натисніть "Макрос> Запустити кілька разів макрос ...". введіть тут опис зображення

  6. Клацніть «Запустити до кінця файлу» та натисніть «Виконати». введіть тут опис зображення

  7. Видаліть будь-які символи, що тривають у списку. введіть тут опис зображення

  8. Готово!

введіть тут опис зображення


5
Цей спосіб повільний для тисяч елементів даних.
Ієн Самуель Маклін Старійшина

Чудова відповідь. Дякую :)
Пітер Т.

Така чудова інформація буде корисна у багатьох подібних ситуаціях. Дякую!
Moin

Дякуємо, що поділилися інформацією. Це цікаво.
ironman

4

Для блокнота ++ 5.9

  1. Натисніть Ctrl + H
  2. Виберіть Розширений режим пошуку (\ n, \ r, \ t, \ o, \ x ...)
  3. Введіть Знайти що: \ r \ n
  4. Введіть Замінити: ,
  5. Replace_All повинен отримати необхідний результат.

3
Ця відповідь повторює прийняту відповідь, і ця відповідь стосується античної версії Notepad ++, тепер доступна версія 7.4.x. Ласкаво просимо до переповнення стека, але, будь ласка, змусити вас відповісти, щоб надати нову інформацію або дати нову інформацію. Повторення наявних відповідей не корисне.
AdrianHHH

Для новіших версій npp це кращий шлях до цього.
медсестра

Це найпростіша відповідь. Мені не доведеться переходити в режим регулярних виразів, просто замінюючи нові рядки комами. N ++ насправді працює правильно, тоді як інші редактори інтерпретують "\ n" як канал повернення каретки І каналу рядка, що спочатку мене заплутало.
BrianVPS

3

Помістіть курсор після яблук на вкладці Макрос , виберіть Почати запис . Введіть символ кома ( , ), пробіл () та натисніть клавішу завершення , на вкладці Макрос виберіть Зупинити запис .

Ctrl + Shift + P для одиночного відтворення.


Дякую за цю пораду. Що робити, якщо у мене 5000 ++ слів? Чи потрібно запускати макрос для всіх окремо? Чи є простіший метод?
користувач2231530

Якщо вам доведеться виконати подібне завдання в майбутньому, ви можете написати сценарій для нього. Найпростіший вихід, мабуть, просто перейдіть на вкладку Макрос і виберіть запустити макрос кілька разів. Це буде зроблено за лічені секунди.
viclim

+1 Ваша відповідь спрямовувала мене в правильному напрямку. У своїй відповіді я задокументував саме те, що працювало на мене.
Ієн Самуель Маклін Старший

2

Це може здатися дивним, але ви можете видалити наступний рядок, скопіювавши весь текст і вставивши його в панель пошуку Firefox, а потім повторно вставити його в блокнот ++

крок 1

крок 2


1
Будь ласка, вдосконаліть цю відповідь. Посилання на зображення не будуть корисними.
Дрю

2

ВИКОРИСТИТИ пошукову панель Chrome

1-натисніть CTRL F
2-вставити скопійований текст у рядок пошуку.
3-натисніть, CTRL Aпісля чого CTRL Cзнову скопіюйте текст із пошукового
4-пасти в Блокноті ++
5-замініть 'space'на','

1-клік для зображення
Клацніть зображення


0

Ви можете використовувати командний рядок cc.rnl ', 'ConyEdit (плагін) для заміни нових рядків потрібним вмістом.


0

Збірка з регулярними виразами \s+для мене працювала:

введіть тут опис зображення


BTW: мені здається, що збіг з регулярними виразками $^повинен працювати, але він, натомість, відповідає ^$.
user3673

Використання параметра "Розширений" прямо над параметром "Регулярний вираз" (на знімку екрана) - це насправді найпростіший спосіб досягти цього.
медсестра
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.