Написание правильного регулярного выражения для удаления всего между определенными строками для поиска и замены в блокноте ++ - PullRequest
0 голосов
/ 30 марта 2019

У меня есть много строк диалога, которые выглядят так:

     671 +++$+++ "murderland" +++$+++ 672 +++$+++ saundra +++$+++  +++$+++ What are you DOING here ?
     672 +++$+++ "murderland" +++$+++ 673 +++$+++ bruce +++$+++ 671 +++$+++ I work here, remember ?

Я хочу, чтобы они были

     What are you DOING here ?
     I work here, remember ?

У меня есть .txt, и я подумал, что я должен использовать notepad ++ найти и заменить на шаблон регулярных выражений.

Есть идеи, как отформатировать это регулярное выражение?

Ответы [ 3 ]

0 голосов
/ 30 марта 2019

Возьмите следующее выражение

.+?(?!.*\++)\s+(.+)

и замените его первой группой захвата ($1 или \1), см. демонстрацию на regex101.com .

0 голосов
/ 30 марта 2019
  • Найти что: ^.+\+{3}\h+
  • Заменить на: LEAVE EMPTY
  • Отметьте «Регулярное выражение»
  • Снять отметку ". Соответствует символу новой строки"

Пояснение:

^       # beginning of line
.+      # 1 or more any character but newline
\+{3}   # 3 plus
\h+     # 1 or more horizontal spaces

Снимок экрана:

enter image description here

0 голосов
/ 30 марта 2019

Я бы использовал поиск: [^+$]*$

Скобки означают выбрать все, КРОМЕ + или $, а затем выбрать как можно больше до конца. Попробуйте это.

Если это сработает, просто найдите все совпадения и скопируйте / вставьте

...