Page 1 of 28

Регулярные выражения

Posted: Fri Nov 17, 2006 1:43 pm
by vitt
Будут ли добавлены в поиск/замену регулярные выражения?
Хотя бы от начала строки до шаблона и от шаблона до конца строки.

Posted: Sat Nov 18, 2006 5:50 pm
by Instructor
Будут, только, если не иначе.

Posted: Sat Nov 18, 2006 6:03 pm
by Natrio
Instructor wrote:Будут, только, если не иначе.
Как это?

Posted: Sat Nov 18, 2006 6:13 pm
by Instructor
Natrio
Важно только, то что есть сейчас (т.к. ничего другого нет).

Posted: Wed Oct 03, 2007 3:58 pm
by Instructor

Тестирование

Posted: Mon Sep 16, 2013 9:43 am
by Instructor
Тестовая версия программы.

Теперь все квантификаторы жадные (кроме одинарной точки, например, ".*" или ".{5,10}"). Чтобы сделать их нежадными (старый принцип), используется "?" после квантификатора, например, "\d*?".

Re: Тестирование

Posted: Mon Sep 16, 2013 1:19 pm
by Infocatcher
Instructor wrote:(кроме одинарной точки, например, ".*" или ".{5,10}")
В чем смысл такого исключения?

А так изменение ооочень полезное, чем ближе к другим реализациям, тем удобнее.

Posted: Mon Sep 16, 2013 3:03 pm
by F. Phoenix
Попробовал: ввел строку "acabbbbbbbbb" и запустил штатный поиск - шаблоны "ab+" "ab+?" одинаково выделяют "abbbbbbbbb".

Posted: Mon Sep 16, 2013 7:29 pm
by Drugmix
странно, но у меня в тестовой версии не работает большинство плагинов:
Image

Posted: Mon Sep 16, 2013 7:45 pm
by opk44
Drugmix
Вероятно битность программы и плагинов не соответствуют друг другу.

Posted: Mon Sep 16, 2013 8:16 pm
by Drugmix
opk44
а, видимо тестовая версия х32.

Posted: Tue Sep 17, 2013 7:13 pm
by Instructor
Тестовая версия

Теперь одинарная точка, например, ".*" или ".{5,10}" также жадная. Как работает жадность регулярных выражений AkelPad'а на примере:
- Шаблон "a.*b" в "aabbccaabbcc" соответствует "aabb" (но не "aabbccaabb").
- Шаблон "a.*?b" в "aabbccaabbcc" соответствует "aab".
F. Phoenix wrote:Попробовал: ввел строку "acabbbbbbbbb" и запустил штатный поиск - шаблоны "ab+" "ab+?" одинаково выделяют "abbbbbbbbb".
Видимо предполагается выделять "ab", но я не вижу практической пользы от этого. Для чего писать "ab+?", если тот же эффект будет, написав "ab"...

Posted: Tue Sep 17, 2013 10:16 pm
by Drugmix
Если не трудно, то, пожалуйста, в следующий раз выкладывайте по возможности и x64 версию.

Posted: Wed Sep 18, 2013 5:12 am
by Instructor
Тестовая версия

Возврат к первому варианту (одинарная точка, например, ".*" или ".{5,10}" не жадная). Второй приобрел ненужное замедление.

Жадные регулярные выражения AkelPad'а выполняются последовательно:
- Шаблон "ab?b" в "abc" не имеет совпадений, т.к. "ab?" соответствует "ab" и следующее "b" не имеет совпадений. Корректный шаблон будет "abb?".

Drugmix
Тестовая версия не для использования, а для тестирования.

Posted: Wed Sep 18, 2013 10:54 am
by Drugmix
Instructor
а может стоит добавить поддержку настройки U и разрешить её переключать в разных частях шаблона?
(?U) и (?-U) для вкл. и выкл. не жадного поиска.