Удалить все, кроме одного слова в строке - Блокнот ++

373
Jaydipsinh Chavda

Я ищу способ найти определенную строку, например '@', и удалить все до и после этой строки. Я бы предпочел способ / macro / addon для Notepad ++, но все было бы полезно.

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

Follow Follow @BararRohit User actions Rohit Barar @BararRohit 

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

@BararRohit

0
Добро пожаловать в SuperUser. Я советую редактировать вопрос следующими способами: Используйте более подходящее название с заглавной буквы, например «Удалить начальные символы в строке». Сделайте так, чтобы глаз мог видеть до / после. Возможно, используйте заглавные буквы ДО и ПОСЛЕ и добавьте строку, начинающуюся с «Заметки», в первом абзаце. Christopher Hostage 5 лет назад 0
Regex - хороший инструмент для этого, который доступен в блоке поиска / замены NotePad ++ после того, как вы узнали, как его использовать. Я предлагаю посетить некоторые учебные сайты, такие как https://regexr.com/ или https://regexone.com/. Если ваш исходный текст взят из Mac или Linux, остерегайтесь разных концовок строки. Christopher Hostage 5 лет назад 0
@ fixer1234 Вы правы, спасибо. Albin 5 лет назад 0

1 ответ на вопрос

0
Toto

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

  • Ctrl+H
  • Найти то, что: .*(@\w+).*
  • Заменить: $1
  • проверить обернуть
  • проверьте регулярное выражение
  • ПРОВЕРЯТЬ . matches newline
  • Replace all

Объяснение:

.* # 0 or more any character ( # start group 1 @ # literally @ \w+ # 1 or more word character (i.e. [a-zA-Z0-9_]) ) # end group 1 .* # 0 or more any character 

Замена:

$1 # content of group 1 

Результат для данного примера:

@BararRohit 

Похожие вопросы