1

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

В общем, я просто хочу удалить весь текст из стенограммы, кроме текста, найденного между кавычками: удалить "сохранить" удалить.

Я уверен, что вы можете сделать это в Notepad++, я просто не знаю как. Может кто-нибудь помочь, пожалуйста!

2 ответа2

5

Это решение этой проблемы заключается в использовании RegEx, инструмента, который сопоставляет части текста с заданным набором правил. Ваши правила довольно просты - ловите все между двумя кавычками. Я не лучший в Regex, но я нашел решение, которое, кажется, соответствует тому, что вы ищете.

Я рекомендую использовать редактор Sublime для этого - во-первых, я не мог заставить его работать с легкостью в N++, а во-вторых, Sublime действительно потрясающий!

Вот как можно извлечь ваши цитаты.

  1. Откройте файл, из которого вы хотите извлечь в Sublime.
  2. Нажмите ctrl+f чтобы открыть инструмент поиска в нижней части экрана.
  3. Нажмите кнопку слева от инструмента поиска с символами. .* . Это включает соответствие RegEx.
  4. В строке поиска введите:"[^"]+"
  5. В правом углу инструмента поиска нажмите « Find All
  6. Нажмите ctrl+c чтобы скопировать все выборы.
  7. Откройте новый файл и нажмите ctrl+v чтобы вставить весь выделенный текст.

RegEx Объяснение

Я разобью выражение на несколько частей.

" - начинается сопоставление текста, начиная с двойной кавычки.
[^"] - Это соответствует всему тексту, который не включает в себя еще одну двойную кавычку - важно, потому что если бы мы действительно соответствовали кавычкам, мы начали бы сопоставлять все в файле после первой кавычки! Не то, что мы хотим. Символ ^ является символом отрицания в RegEx - он указывает, что не соответствует тому, что будет дальше.
+" - заставляет нас сопоставлять только текст, который в конечном итоге заканчивается еще одной двойной кавычкой. Это препятствует тому, чтобы мы сопоставили, скажем, последнюю цитату в документе с концом документа, и заканчивает все начавшиеся ранее совпадения, не перетекая в то, что мы не хотим сопоставлять.

Я думаю, что есть более красивые способы сделать это, но я также ожидаю, что это покрывает то, что вам нужно. Если у вас есть какие-либо проблемы с этим, дайте мне знать!

Да, и в заключение, одна из причин, почему я рекомендовал Sublime, заключается в том, что он поддерживает несколько курсоров, что позволяет легко выбирать разные части текста одновременно. Попробуйте открыть документ и ctrl+middle click в нескольких местах, а затем начните вводить текст.

редактировать

Ха-ха, я совершенно забыл заглянуть в наиболее заметное место в Notepad++ - инструмент поиска - для встроенного RegEx. Вы можете сделать это примерно так же, но не было хорошего способа выделить весь текст. Простейшей вещью было нажать "Найти все в текущем документе", а затем выделить весь текст, сгенерированный в окне "Найти" внизу. Но это не так красиво, как это делает Sublime.

0

Попробуй это :

  1. Ctrl + H
  2. Найдите что: ^(\l +)
  3. Заменить на: (пусто)
  4. Заменить все

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .