Обратные регулярные выражения для генерации данных - PullRequest
11 голосов
/ 25 мая 2010

В одном из подкастов StackOverflow (там, где ребята обсуждали генерацию данных для тестирования БД - либо # 11 или # 12 ), Джефф упомянул что-то вроде "обратный регулярный" выражения ", которые используются именно для этой цели: с учетом регулярного выражения, создайте строку, которая в конечном итоге будет соответствовать указанному регулярному выражению.

Каков правильный термин для всей этой концепции? Это известная концепция?

Ответы [ 3 ]

6 голосов
/ 25 мая 2010

Модуль Perl String::Random (в CPAN) делает это. Принимает подмножество регулярных выражений и случайным образом просматривает его.

5 голосов
/ 25 мая 2010

Аннотация: Сеть рекурсивных переходов (с генератором постмодернизма * в качестве интересного примера )

Одной из специализаций будет ваше "обратное регулярное выражение".


Что касается терминологии: регулярное выражение является формой грамматики , которая описывает все слова , принадлежащие конкретному регулярному языку (а именно все входы , соответствующие выражению).

Поэтому можно задать вопрос: "Как создать случайное слово, соответствующее заданному регулярному выражению" или "Как получить случайное слово, принадлежащее указанному регулярному языку" .

0 голосов
/ 29 августа 2012

Абсолютно возможно генерировать данные из регулярных выражений. Некоторые проекты с открытым исходным кодом находятся в стадии разработки в этой области.

Учебник о , как генерировать случайный пароль из регулярного выражения , объяснит вам, как это делается. xeger (обратное регулярное выражение, проект с открытым исходным кодом) используется в учебном пособии. Пожалуйста, прочитайте урок, чтобы узнать больше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...