Где я могу найти модульные тесты для регулярных выражений на нескольких языках?

Я создаю помощник регулярного выражения http://www.debuggex.com. Объем детали, который я хочу показать, требует, чтобы я написал свой собственный парсер и помощник.

Чтобы убедиться, что мой парсер и помощник работают правильно, я написал свои собственные модульные тесты для Javascript-аромата регулярных выражений, но это касается только красных случаев, о которых я знаю. Я хотел бы использовать стандартный набор тестов и недавно указал на http://hg.ecmascript.org/tests/test262/summary, который я буду использовать.

Мой вопрос в том, где я могу найти такие комплекты тестов для других ароматов regex? Я бы хотел поддержать другие вкусы в будущем. Я не смог найти что-либо по googling ( "тест" загрязняет результаты с помощью тестеров regex). Я ищу тестовые пакеты для языков python, php, perl, java, ruby ​​ и .net.

Ответ 1

Большинство из этих языков с открытым исходным кодом. У любого приличного проекта должны быть свои тесты в указанном репо, иначе я был бы весьма обеспокоен.

  • Тесты на регулярные выражения Python
  • PHP регулярные тесты
  • Perl регулярные тесты выглядят действительно обширно
  • Открытые модульные тесты JDK (разновидность Java с открытым исходным кодом)
  • Тесты на регулярные выражения в Ruby
  • Моно регулярные тесты (версия с открытым исходным кодом .NET)
  • Тесты RE2 (движок C++ regex, разработанный в Google)
  • C тестовый набор (разработанный AT & T Research)
  • Тесты регулярных выражений PCRE (библиотека C регулярных выражений, совместимая с Perl)
  • Тесты регулярных выражений JavaScript (комплект совместимости Ecma Technical Committee 39)

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

Ответ 3

Дополнительные пакеты для регулярных выражений для дополнительных языков:

Bonus

  • Regfuzz (инструментарий C для проверки устойчивости регулярных выражений с использованием произвольно сгенерированных и недопустимых регулярных выражений)