Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.03.16;
Скачать: [xml.tar.bz2];

Вниз

Регэкспы в Делфи   Найти похожие ветки 

 
Kerk ©   (2008-02-06 21:39) [0]

Существует ли фриварная библиотека для делфи, которая может генерировать все строки удовлетворяющие заданному ей регэкспу? Юнитов для проверки "regular expression matching" дофига, а вот того, что мне нужно не нашел.

P.S. Есессно имеются ввиду регэкспы ограниченной длины


 
хам   (2008-02-06 21:43) [1]

> Существует ли фриварная библиотека для делфи, которая может
> генерировать все строки удовлетворяющие заданному ей регэкспу?

Это как? Неужто на запрос .+ для 4-х символов будет 4 миллиарда значений?


 
Kerk ©   (2008-02-06 21:45) [2]


> хам   (06.02.08 21:43) [1]

Намного меньше 4х миллиардов. "точка" содержит далеко не все символы.
Но не суть. Пусть синтаксис будет чем-то ограничен. Мне просто нужно дать юзеру возможность удобно задавать шаблоны строк.


 
Zeqfreed ©   (2008-02-06 21:52) [3]

> Kerk ©   (06.02.08 21:45) [2]

* и ? для обычных смертных и PCRE для продвинутых пользователей не подходит?


 
Kerk ©   (2008-02-06 21:57) [4]


> Zeqfreed ©   (06.02.08 21:52) [3]

Смотрел сайт PRCE. Нужного мне функционала в описаловке не нашел. Плохо искал?


 
Zeqfreed ©   (2008-02-06 22:00) [5]

> Kerk ©   (06.02.08 21:57) [4]

Описание чего именно? Я имею в виду, что пользователи, которые знакомы с синтаксисом PCRE могли бы составлять шаблоны с помощью него, а ты бы стандартной библиотекой потом проверял строки на совпадение, или какая там стоит задача. А те, кто синтаксиса не знает, могут использовать стандартные wildcard-символы * и ? в шаблоне. Или я неправильно понял суть вопроса?


 
Kerk ©   (2008-02-06 22:04) [6]


> Zeqfreed ©   (06.02.08 22:00) [5]

Мне нужно не проверять что-либо на совпадение с шаблоном. Такого как раз в сети как грязи. Мне нужно по заданному шаблону "super[A-Z]" сгенерить список строк "superA", "superB","superC" и т.д.


 
Zeqfreed ©   (2008-02-06 22:06) [7]

> Kerk ©   (06.02.08 22:04) [6]

Это я понял, но не понял зачем. Если тебе нужно «дать юзеру возможность удобно задавать шаблоны строк», то я не понимаю каким местом тут нужна генерация всех строк, которые удовлетворяют шаблону.


 
Kerk ©   (2008-02-06 22:09) [8]


> Zeqfreed ©   (06.02.08 22:06) [7]

Блин, ну задача такая вот :)) Все-тки хотелось бы обсудить вопрос "как", а не "зачем".


 
хам   (2008-02-06 22:10) [9]

> [7] Zeqfreed ©   (06.02.08 22:06)
> Если тебе нужно «дать юзеру возможность удобно задавать
> шаблоны строк», то я не понимаю каким местом тут нужна генерация
> всех строк, которые удовлетворяют шаблону.

Млин, это шаблоны для генерации сток, цель генерация, не все ли равно для чего она нужна?


 
Zeqfreed ©   (2008-02-06 22:18) [10]

Ну мне правда интересно зачем это может понадобиться. Если уж это такая тайна, то ладно.

По теме нашел две ссылки, подобная задача на Перле:
http://www.perlmonks.org/index.pl?node_id=284513
http://search.cpan.org/~bowmanbs/Regexp-Genex-0.07/lib/Regexp/Genex.pm

В принципе, если ограничить синтаксис, например, строковыми классами, альтернативами и квантификаторами, то написать реализацию вполне реально.


 
Kerk ©   (2008-02-07 12:13) [11]


> Zeqfreed ©   (06.02.08 22:18) [10]

Да в общем, не секрет. Просто не хочется карты раньше времени раскрывать. Ну, например утилитки для брутфорса паролей такое используют.


 
Kerk ©   (2008-02-07 12:14) [12]

Жаль, что на Делфи нету. Так и знал, что придется самому писать.


 
ketmar ©   (2008-02-07 12:21) [13]

>[12] Kerk © (2008-02-07 12:14:00)
кстати, в какой-то дельфячей либе что-то подобное видел. кажется. впрочем, это тебе не поможет, потому что не помню ни где, ни как, ни когда. %-(

---
Understanding is not required. Only obedience.


 
Kerk ©   (2008-02-07 12:33) [14]


> ketmar ©   (07.02.08 12:21) [13]

Ну напрягись! Если вспомнишь, я буду всегда-всегда с тобой спорить, чесслово :)


 
ketmar ©   (2008-02-07 12:47) [15]

>[14] Kerk © (2008-02-07 12:33:00)
блин, да я уже весь моск сломал, честно. самое обидное, что ведь не помню. на каком-то старом болване чуть ли не прошлого века, в разделе «опенсорц» было. и либа была «а-ля rx». в названии буква «s». вот всё, что осталось в памяти. честно — как только (если) — так сразу и скажу. я ещё вот помню, что удивлялся: зачем такая фигня вообще нужна. кстати, в описании либы упирали на тот факт, что «woldcard matching есть у всех, а вот наоборот — ни у кого, только у нас». ну, что-то в этом роде. очень старое. но точно опенсорцное. но малоизвестное (собственно, нигде больше и не видел, кроме как на том болване). я порою старые архивы, может лежит где, но ты особо не надейся, много водки утекло с тех пор…

---
Understanding is not required. Only obedience.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.03.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.007 c
15-1202232366
Thumbs.db
2008-02-05 20:26
2008.03.16
Thumbs.db


2-1202928676
savyhinst
2008-02-13 21:51
2008.03.16
HOWTO_ISAPI


2-1203055696
кекс
2008-02-15 09:08
2008.03.16
"Дерево" для данных


15-1202475008
korstin
2008-02-08 15:50
2008.03.16
Киноманам посвящается )))


2-1203332964
Washington
2008-02-18 14:09
2008.03.16
Unit Variants





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский