在哪里可以找到多种语言的正则表达式的单元测试?

我正在 http://www.debuggex.com构建一个正则表达式助手。我想要显示的大量细节需要我编写自己的解析器和匹配器。

为了确保解析器和匹配器正确工作,我编写了自己的正则表达式 JavaScript 风格的单元测试,但是这些测试只涉及我所知道的边缘情况。我想使用一个标准的测试套件,并且最近指向了 http://hg.ecmascript.org/tests/test262/summary,我将使用它。

我的问题是,我在哪里可以找到其他正则表达式口味的这种测试套件?以后我想支持其他口味。我还没有能够通过谷歌找到任何东西(“ test”污染了正则表达式测试人员的结果)。我正在寻找语言 巨蟒我不知道Perl爪哇咖啡Ruby。网的测试套件。

7171 次浏览

其中大多数语言都是开源的。任何像样的项目都应该在所述回购中包含测试用例,否则我会非常担心。

  • Python 的正则表达式测试
  • PHP 的正则表达式测试
  • Perl 的正则表达式测试看起来非常广泛
  • 开放 JDK 的单元测试(Java 的开放源码风格)
  • Ruby 的正则表达式测试
  • Mono 的正则表达式测试(. NET 的开源版本)
  • . NET Core 的正则表达式测试
  • RE2 的测试(Google 开发的 C + + 正则表达式引擎)
  • C 测试套件(由 AT & T Research 开发)
  • PCRE 正则表达式测试(Perl 兼容正则表达式 C 库)
  • JavaScript 正则表达式测试(Ecma Technology Committee 39兼容性套件)

我还找到了一张关于 这一页的详细图表,可能对你有所帮助。

为了在一个页面上有一个完整的列表,我发现在已接受的答案中省略了一些:

用于其他语言的其他正则表达式测试套件:

意外收获

  • Regfuzz (用于使用随机生成的无效正则表达式测试正则表达式健壮性的 C 工具包)