![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2010
Сообщений: 497
|
Вы все еще не ответили на вопрос о том, что понимаете под дка и нка...
Показывают. Показывают замечательное различие между двумя эквивалентными грамматиками, записанными по-разному. Что на автоматах не должно быть. А на переборах с возвратом исходной грамматики - запросто (там действительно для выбора и для [] могут использоваться различные механизмы). Цитата:
Цитата:
Цитата:
Обратите внимание, в 5-м абзаце пункта 6.1 автор пишет, что нка и дка преобразуются друг в друга. Я это вам уже говорил. Так что точнее механику называть "перебором с возвратом", а не нка. |
|
|||||
|
Регистрация: Jul 2011
Сообщений: 67
|
Цитата:
Цитата:
Вот вам ещё ссылка: http://rus-linux.net/nlib.php?name=/...s_in_C_ru.html Читайте пункт "Автомат". Вот ещё одна интересная: http://www.piter-press.ru/attachment...215&at=exc&n=0 Здесь мимолётное упоминание вначале раздела "основы". http://www.opennet.ru/base/dev/php_regexp.txt.html Тут: http://www.devexp.ru/2011/02/konechn...y-v-c/#more-78 в разделе "Практическое применение автоматов". Вот здесь автор пишет что регулярные выражения в MySQL обрабатываются с помощью дка механизма. http://team-madalf.com/index.php?showtopic=48990 О чём кстати упоминает Фридл. Наверное хватит пока, потом ещё поглубже попробую порыть. Цитата:
|
|
|||||
|
Почему бы просто не посмотреть исходный код?
__________________
משיח לא בא משיח גם לא מטלפן |
|
||||||||||||
|
Регистрация: Nov 2010
Сообщений: 497
|
Цитата:
ссылка1. Здесь автор пришет "We originally planned to use PCRE for the regular expression search, until we realized that it used a backtracking algorithm, meaning it is easy to make searches take exponential time or arbitrary stack depth". И я с ним согласен - ваши эксперименты по быстродействию регулярных выражений подтверждают именно его точку зрения, а не использование нка. В wiki пишут, например, что в PCRE есть жесткое ограничение на глубину рекурсии. Откуда в НКА может взяться рекурсия - совсем не понятно. Да, если очень покопаться, там скорее всего можно будет накопать "автомат" (не нка или дка!). Но "автомат" можно при желании много где накопать - достаточно наличия чуть ли не любого состояния. Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
. А детали важны - cs-regex транслируются, а вот p-regex - нет.Цитата:
Цитата:
.Цитата:
Добавлено через 5 минут Цитата:
Pcre - это backtracking. Автоматы - это, например Re2. |
|
|||||
|
Регистрация: Jul 2011
Сообщений: 67
|
Цитата:
Примерный перевод: Бла бла бла PCRE - это чушь для тысяч буков, а я написал свой парсер обёртку вокруг grep, которая использует быструю ДКА. Ага использует! Быструю! И почему он кстати, всю статью упоминает няфу и дафу, всячески сравнивает их если они только для "игрушечных реализаций годятся"? Вот здесь например написано что pcre основана на НКА механизме: http://www.hostland.su/books/php5/page/224.html Представляю уже что вы ответите: "Пошто гуглишь?! Автор профан! Учи матан!(OBEY!)" ![]() Цитата:
Цитата:
Все механизмы преобразующиеся в другие механизмы ведут себя, после преобразования, так-же как до преобразования. НКА и ДКА механизмы. ДКА преобразуется в НКА. Следовательно НКА ведёт себя так-же как ДКА. Что-то меня смущает в этом всём. Мало ли что, во что преобразуется. Цитата:
"Матчинг" это захват что-ли? Можно и русские аналоги использовать. |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|