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

Russian main discussion
Post Reply
  • Author
  • Message
Offline
Posts: 4
Joined: Fri Nov 17, 2006 12:43 pm

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

Post by vitt »

Будут ли добавлены в поиск/замену регулярные выражения?
Хотя бы от начала строки до шаблона и от шаблона до конца строки.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Будут, только, если не иначе.

Offline
Posts: 12
Joined: Wed Sep 13, 2006 12:59 pm

Post by Natrio »

Instructor wrote:Будут, только, если не иначе.
Как это?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Natrio
Важно только, то что есть сейчас (т.к. ничего другого нет).

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »


Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

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

Post by Instructor »

Тестовая версия программы.

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

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

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

Post by Infocatcher »

Instructor wrote:(кроме одинарной точки, например, ".*" или ".{5,10}")
В чем смысл такого исключения?

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

Offline
Posts: 176
Joined: Sat Dec 24, 2011 4:05 pm

Post by F. Phoenix »

Попробовал: ввел строку "acabbbbbbbbb" и запустил штатный поиск - шаблоны "ab+" "ab+?" одинаково выделяют "abbbbbbbbb".

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

странно, но у меня в тестовой версии не работает большинство плагинов:
Image

Offline
Posts: 874
Joined: Sat Jan 16, 2010 2:03 pm

Post by opk44 »

Drugmix
Вероятно битность программы и плагинов не соответствуют друг другу.

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

opk44
а, видимо тестовая версия х32.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

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

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

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Если не трудно, то, пожалуйста, в следующий раз выкладывайте по возможности и x64 версию.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

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

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

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

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

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Instructor
а может стоит добавить поддержку настройки U и разрешить её переключать в разных частях шаблона?
(?U) и (?-U) для вкл. и выкл. не жадного поиска.
Post Reply