Notepad : сложный поиск и замена

#search #replace #find #notepad

#Поиск #заменить #Найти #notepad

Вопрос:

У меня есть следующее:

T47101 UNIPROID FGFR1_HUMAN T47101 ECNUMBER EC 2.7.10.1 T47101 ПОСЛЕДОВАТЕЛЬНОСТЬ MWSWKCLLFWAVLVTATLCTARPSPTLPEQAQPWGAPVEVESFLVHPGDLLQLRCRLRDDVQSINWLRDGVQLAESNRTRITGEEVEVQDSVPADSGLYACVT T47101 DRUGINFO D09HNV Одобренный для применения T47101 DRUGINFO D01PZD Одобренный Ромиплостим T47101 DRUGINFO D02WVT E-3810 Фаза 3

Здесь много наполнителя. Единственное, что меня интересует, это слова, которые следуют за UNIPROID, которые всегда разные, но всегда содержат _HUMANПОСЛЕ. Я хочу сохранить эту информацию (например. FGFR1_HUMAN).

Тогда другая вещь, которая меня интересует, — это все, что следует за ПОСЛЕДОВАТЕЛЬНОСТЬЮ слов. Я хочу сохранить буквы, которые следуют за этим. Все, кроме этих двух выделенных жирным шрифтом вещей, от которых я хочу избавиться.

У меня нет большого опыта в использовании этого, поэтому мне нужна вся помощь, которую я могу получить.

Вот что у меня сейчас есть:

Найти: . UNIPROID(D).

У меня проверено регулярное выражение, а флажок .соответствует новой строке снят.

Редактировать: команда, которая у меня есть сейчас, может удалить все вплоть до FGFR1_Human, но я не уверен, как поступить.

Комментарии:

1.Нравится это? .*?(?|UNIPROIDh (w _HUMAN)|SEQUENCEh (w )|$) regex101.com/r/hP3ZKm/1

Ответ №1:

Вы могли бы

Найти то, что:

 . ?(?|UNIPROIDh (w _HUMAN)|SEQUENCEh (w )|$)
 

Шаблон соответствует

  • . ? Сопоставьте 1 раз любой символ, кроме новой строки, не жадный (ленивый)
  • (?| Группа сброса ветки, чтобы использовать группу 1 для обоих вариантов
    • UNIPROIDh (w _HUMAN) Сопоставьте символы UNIPROID, 1 горизонтальных пробелов и захватите символы 1 слов и _HUMAN в группе 1
    • | Или
    • SEQUENCEh (w ) Сопоставьте ПОСЛЕДОВАТЕЛЬНОСТЬ, 1 горизонтальные символы пробелов и захватите 1 символы слов в группе 2
    • | Или
    • $ Конец строки также должен соответствовать последней части
  • ) Закрыть группу

Заменить на:

 $1
 

Демонстрация регулярных выражений

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