Regular Expression Search and Replace (RESearch)

Здесь можно обсудить ваш любимый плагин.

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Thu 21 Apr, 2016 09:33

Latest post of the previous page:

  1. Хочу найти строку

    Code: Select all

    :_foobar
    
    за которой, возможно, следует

    Code: Select all

    :_foobar$
    
    - получаю выделенными все строки от

    Code: Select all

    :_foobar
    
    и на сколько хватило буфера (или чего там). Если заменить \R на \n - работает.
  2. Просмотр назад не работает с \n: работает, а - нет.
  3. Если в диалоге подтверждения при замене не помещается полностью обрабатываемый фрагмент текста, выделять заменяющую его строку другим цветом. Если фрагмент состоит более чем из одной строки, также сообщать в заменяющей строке количество неотображенных строк (напр., "... <20 lines not displayed> ...").
Magically yours
Raistlin

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Fri 29 Apr, 2016 00:24

При замене \l не переключает в нижний регистр следующий символ, как утверждается в хелпе, а работает как \L.
Magically yours
Raistlin

User avatar
HaRT
Moderator
Posts: 8118
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 68 times
Been thanked: 107 times

Regular Expression Search and Replace (RESearch)

Post by HaRT » Fri 29 Apr, 2016 00:53

Raistlin wrote:При замене \l не переключает в нижний регистр следующий символ, как утверждается в хелпе, а работает как \L.
Как воспроизвести? (По схеме: какая версия, что делаю, что ожидаю, что получаю вместо этого.)
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Fri 29 Apr, 2016 08:51

HaRT
Стоим в начале в редакторе, , .
Magically yours
Raistlin

User avatar
HaRT
Moderator
Posts: 8118
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 68 times
Been thanked: 107 times

Regular Expression Search and Replace (RESearch)

Post by HaRT » Fri 29 Apr, 2016 11:26

Raistlin, да, у меня воспроизводится (в версии 8.64).
Просто в русскоязычной доке написано \l - следующий символ в нижнем регистре., и я не был уверен, одно ли и то же Вы с автором имеете в виду. Но в англоязычном хелпе значится \l - lowercase next character. — и тут уже никаких разночтений быть не должно.
По факту же в нижний регистр переводится следующий символ в смысле symbol, т.е. выражение из строки замены.
Фар есть инструмент, а не нянька. © 2009 DrKnS

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Regular Expression Search and Replace (RESearch)

Post by Shmuel » Fri 29 Apr, 2016 11:35

Far 3.0.4637 x86, RESearch 8.6.5, пример отрабатывается правильно, на выходе получается
SYsTEM\CurrentControlSet\Services\Dhcp\Parameters\Options\15\RegLocation

User avatar
HaRT
Moderator
Posts: 8118
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 68 times
Been thanked: 107 times

Regular Expression Search and Replace (RESearch)

Post by HaRT » Fri 29 Apr, 2016 12:09

Shmuel, да, в версии 8.65 работает согласно документации.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Fri 29 Apr, 2016 12:15

Действительно, оказалось, что у меня 8.63.
Magically yours
Raistlin

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Regular Expression Search and Replace (RESearch)

Post by Shmuel » Fri 29 Apr, 2016 12:17

Правильное название версии: 8.6.5, что можно увидеть, нажав F3 в меню плагинов. Хотя в документации автор использует другую систему нумерации версий.

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Fri 29 Apr, 2016 19:37

При нажатии кнопок "\" и "/" в диалоге содержимое полей с текстом становится "нетронутым" (бледным), сбрасывается в default позиция окна диалога (оно центрируется) и курсор оказывается в поле "Search for".
Magically yours
Raistlin

User avatar
Cavaler
Posts: 1162
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 3 times
Contact:

Regular Expression Search and Replace (RESearch)

Post by Cavaler » Wed 11 May, 2016 17:11

lllcky wrote:У кого работает плагин на Windows 10 Home x64?
Версия последняя RESearch865. Far 3.0.4545 x64.

Вылетает exception в конце любого поиска. Пробовал на голом FAR на двух разных машинах с Windows 10 Home x64. Ситуация одинаковая.
Что можно сделать??
Полгода не прошло, я на какое-то время очнулся.
Я смог отловить какую-то такую багу, и исправить, при нажатии F4 на найденном файле. Похоже?

GorDAn
Posts: 49
Joined: Sun 26 Jun, 2011 09:47
Has thanked: 6 times

Regular Expression Search and Replace (RESearch)

Post by GorDAn » Fri 03 Jun, 2016 10:39

Far 3.0 build 4695 x64
RESearch 8.6.5.0
Windows 8.1 x64
При попытке поиска в некоторых папках (например, каталог, где находится Far) возникает исключительная ситуация.

Code: Select all

╔═══════════════════════ Исключительная ситуация ════════════════════════╗
║ Исключение:  Нарушение доступа (чтение из 0x0000000008FAE069)          ║
║ Адрес:       0x0000000180058C20 ClosePanelW                            ║
║ Функция:     GetFindDataW                                              ║
║ Модуль:      oads\Dir\Far_x64_Empty\Plugins\RESearch\RESearchU3x64.dll ║
╟────────────────────────────────────────────────────────────────────────╢
║{ Выгрузить плагин } [ Отладка ] [ Стек ] [ Минидамп ] [ Игнорировать ] ║
╚════════════════════════════════════════════════════════════════════════╝
А при попытке активировать [RE Builder], его форма открывается за основным диалогом. Воспользоваться им , так и не удалось.

Code: Select all

╔════════════════════════════ RE Builder ════════════════════════════╗    │      
║ Исходный текст:                                                    ║    │      
║                                                                                
║          ╔═════════════════════ Переименовать выделенные ═════════════════════╗
║          ║ Содержащий текст:   [ ] Регулярное выражение [ ] Учитывать регистр ║
║          ║                                                                   ↓║
║          ║ Заменить на:        [ ] Многократная замена                        ║
║          ║                                                                   ↓║
║          ║                                                                    ║
║          ║ [x] Подтверждать каждую замену                       [ RE Builder ]║
║          ║ [ ] Сохранить выделение                                            ║
║          ║ [ ] Предварительно показать результат                              ║
╚═══════   ║                                                                    ║
           ║                   { OK } [ Отмена ] [ Закрыть ]        [ Пресеты ] ║
           ║                                                                    ║
           ╚════════════════════════════════════════════════════════════════════╝

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Sun 12 Jun, 2016 14:33

в не дает результатов. Меняем "\02" на "t" или удаляем "(?<=[a-z])" из условия - находит.
Magically yours
Raistlin

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Regular Expression Search and Replace (RESearch)

Post by Shmuel » Sun 12 Jun, 2016 15:02

Raistlin
Это совершенно правильное поведение.

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Sun 12 Jun, 2016 15:19

Shmuel, почему? Я к тому, что в скобках, обращаюсь, зачем условие перед ней учитывается?
Magically yours
Raistlin

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Regular Expression Search and Replace (RESearch)

Post by Shmuel » Sun 12 Jun, 2016 15:38

Raistlin wrote: Я к тому, что в скобках, обращаюсь, зачем условие перед ней учитывается?
(foo)?(?<=[a-z])(t)|\02
Данное регулярное выражение содержит оператор |, указывающий матчить то, что от него слева или справа. Выражение слева не матчит строку two, поэтому бэк-референсу \02 не на что ссылаться.
Если эти доводы вас не убеждают, удостоверьтесь, что так же ведёт себя и встроенный поиск Far, и все 3 библиотеки плагина LF Search.

User avatar
Raistlin
Posts: 664
Joined: Wed 16 Mar, 2005 16:01
Location: St. Petersburg
Has thanked: 1 time
Contact:

Regular Expression Search and Replace (RESearch)

Post by Raistlin » Sun 12 Jun, 2016 16:12

Может, так оно и должно работать, но из хелпа это ясно не следует.
Magically yours
Raistlin

Post Reply

Return to “Обсуждение плагинов”