Re: Ранжирование регулярных выражений
От: Sinclair Россия https://github.com/evilguest/
Дата: 10.06.08 06:35
Оценка:
Здравствуйте, The Lex, Вы писали:

TL>Есть набор регулярных выражений для разделения заданной строки по типам. Как автоматически распределить их по порядку, чтобы, например, "любые строки" точно проверялось в самом конце и не "перехватывало", например, "только строки с буквы Ц"?

1. Только ручное ранжирование. Иначе начнутся спецэффекты при небольших модификациях одного из правил.
2. Можно попытаться ввести на пространстве регексов отношения частичного порядка, типа regA < regB если для любого текста T, который матчится по regB, regA тоже гарантированно будет матчить. Тогда можно проверить ручное ранжирование на предмет этой упорядоченности, т.к. если "следующее" правило < "предыдущего", то "следующее" не сработает никогда.

Вопрос о вычислении этого частичного порядка, имхо, достаточно сложен. Простые примеры тут уже привели; но есть масса несложных примеров, когда это не сработает.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.