我希望能够列出与正则表达式匹配的所有可能字符串。
我想要匹配的所有正则表达式中都没有“*”或“+”,只有类似于“x*{5}”这样的内容,它等同于“x?x?x?x?x?”。
因此,对于任何像下面这样的正则表达式:
我希望能够匹配表达式中的所有字符串。因此,该库或程序应该输出类似于以下内容:
因此,对于任何像下面这样的正则表达式:
[a-c]?cdr*{0,2}
我希望能够匹配表达式中的所有字符串。因此,该库或程序应该输出类似于以下内容:
cd, acd, bcd, ccd, cdr, acdr, bcdr, ccdr, cdrr, acdrr, bcdrr, ccdrr
只要在Linux上运行,我不关心它实现的编程语言。
精化:如果将正则表达式转换为确定性有限状态自动机,则该自动机必须可表示为有向无环图。这就是为什么可能的输出字符串必须是可枚举的(而不是无限长的字符串)。