Вопрос Редактор с использованием muti-line поиска и замены


Я ищу текстовый редактор для Windows, который способен выполнять поиск и замену многострочного текстового блока.

Он должен иметь возможность запускать эту операцию в папке или в открытых файлах.

В идеале он поддерживает регулярные выражения, но это не существенно.

Благодаря!


4
2017-10-04 23:01


происхождения




ответы:


я использовал Notepad ++ какое-то время, когда мне все еще приходилось делать вещи на компьютере под управлением Windows; у него есть достойная поддержка регулярных выражений. У этого есть интуитивно понятный интерфейс, и вам не нужно запоминать комбинации клавиш и ярлыки.


8
2017-10-05 00:17



Пробный блокнот работает отлично, только небольшая проблема заключается в том, что многострочный текст отображается неправильно в небольшой текстовой области, выделенной для поискового предложения. (странные символы, где табуляция и \ r \ n должны быть). Иначе любить его! Особенно группировка результатов поиска. - Art
Хм, прошло некоторое время с тех пор, как я использовал его, но я думаю, что есть варианты того, как выглядят символы новой строки, возврат каретки и вкладки. Возможно, вам захочется немного поиграть с настройками. Я использовал для переключения между видимыми символами для них и более обычным внешним видом в зависимости от того, что я делал. - Shane
Notepad ++ также является готовым к использованию пакетом в менеджере программного обеспечения Ubuntu. Я использую его для моей многострочной замены, и он работает очень хорошо. - Felix Dombek


напор

Блоки выбираются с помощью v, Ctrl-V или Shift-V (среди прочего). После того, как выбранные, команды замены выполняются по блоку по умолчанию.


2
2017-10-04 23:19



Можете ли вы найти выбранный блок в открытых файлах в vim? - Art
@Art да, но я понятия не имею, как изящно. - quack quixote
Я не понимаю вопроса. - wfaulk
В принципе, я выбираю блок текста с «V», а затем я хочу искать выделенный текст (не внутри него) в данном файле / папке. Может ли это сделать? - Art
@Art - вы хотите найти выделенный блок текста внутри файлов в папке, не так ли? Не внутри, но vim полагается на несколько инструментов для такого рода вещей (grep и т. П.), Поэтому начните с этого и посмотрите, что вам нужно. - Rook


Emacs

использование C-q C-j для указания новой строки в шаблоне для соответствия или замены. Обычный текст и регулярное выражение поддерживаются либо сразу, либо в режиме запроса (получите подтверждение для каждого совпадения).

Функции, которые вы хотите,

replace-string
query-replace-string
replace-regexp
query-replace-regexp

и все они могут быть вызваны с помощью M-x <function name>, У некоторых есть привязки по умолчанию.

использование C-h f <function-name> чтобы узнать, какая привязка привязана к любой функции.

Чтобы выбрать блок из текста для использования

  1. Больше точки к одному концу блока. Удар C-<space>,
  2. Переместите точку на другой конец. Удар C-w который выдержит весь блок, тогда C-y возвращать захваченный блок или взывать copy-region-as-kill,
  3. M-x <function> тогда C-y для вставки блока в пространство поиска. Новые линии обрабатываются естественным образом.
  4. как обычно.

2
2017-10-04 23:39



Вы также можете выбрать блок текста, выделив его мышью. Я знаю, это звучит очевидно, но некоторые люди не знают, что Emacs является графическим приложением. - Richard Hoskins


EditPadPro для победы!  Он делает все, что вы просили:

  1. Многоканальный поиск и заменить
  2. Заменить все открытые файлы
  3. Поддержка регулярных выражений

На самом деле, я думаю, что бесплатная версия все это тоже.

Это серьезно лучший текстовый редактор, который я когда-либо использовал. Он имеет все функции, которые могут вам понадобиться. Я обычно считаю, что это выходит за рамки служебных обязанностей.


1
2017-10-05 02:33





Когда мне нужен многострочный поиск-замена, я использую Microsoft Word. Я никогда не использую Microsoft Word в качестве текстового редактора, кроме случаев, когда мне нужна эта функция. Вы можете использовать ^ p для поиска строк.

Обычно я это делаю:

I edit a text file in my favorite text editor, but I need multi-line search-replace
Ctrl-A, Ctrl-C to select and copy all text editor
Start Microsoft Word
Ctrl-V
Search/Replace "First line^pSecond line" with "New first line^pNew second line"
Ctrl-A, Ctrl-C to select and copy all from Word
Switch back to text editor
Ctrl-V to paste newly fixed-up text
Continue editing document in my favorite editor

Это работает для меня.


0
2017-10-05 00:22





Не текстовый редактор, но вы должны дать TextCrawler выстрел. Это очень легкий и мощный инструмент для выполнения поиска и замены в файлах. Простой и хороший пользовательский интерфейс для создания многострочного текста.

Он позволяет выполнять стандартный поиск, регулярное выражение, нечеткий поиск и командные команды.


0
2018-01-15 14:45