Мне нужна помощь с notepad++ и RegEx. Я уже искал ответы, но не нашел или не понял их. У меня в основном есть строки, которые выглядят как...
пользователь:$2y$10$Bst0pYRdnpe9kBWTYj925u.VL3ZDuS3lUjxz9SvL/d5UDh6V2A9y:[email protected]
И я хочу извлечь тот, что в средней части между : :
решение1
Я хочу извлечь текст в средней части между :
s
Меню «Поиск» > «Заменить» (или Ctrl+ H)
Установите «Найти что» на
(.*?:)(.*?)(:.*)
Установите «Заменить на»
\2
Включить «Регулярное выражение»
Нажмите «Заменить все».
До:
user:blahblah:example@mail
user:fkdlsfklkdslgkfds:example@mail
user:popbovpxobpfdgfd:example@mail
user:jdspkfokglkf';lkbv';z:example@mail
user:flkdslafeklfkldskf'l:example@mail
user:ddsalfkdlskfl;'dsk:example@mail
После:
blahblah
fkdlsfklkdslgkfds
popbovpxobpfdgfd
jdspkfokglkf';lkbv';z
flkdslafeklfkldskf'l
ddsalfkdlskfl;'dsk
дальнейшее чтение
решение2
Мне не удалось сделать это за один проход.
- начать поиск шаблона
^[^:]*:
пустой заменить - конец строки поиска шаблон
:.*$
пустой заменить
обратите внимание, что хотя теоретически Posix
Шаблон поиска не будет ^[^:]*:\([^:]*\):.*$
работать\1
согласно предложению Мате, у меня это работает (notepadd++ 6.2.2), проверено на образце OP.
Шаблон поиска не будет ^[^:]*:([^:]*):.*$
работать\1