因此,如果我有简单的正则表达式,例如:
"g{1,3}(a|e|i|o|u)"
我希望我的程序生成字符串
ga
ge
gi
go
gu
gga
gge
ggi
ggo
ggu
ggga
ggge
gggi
gggo
gggu
我不会将“g *(a | e | i | o | u)”用于正则表达式,因为可以有无限数量的'g'并且会有无限数量的字符串。
对简单有效的算法有什么建议吗?我想我将能够通过使用 for/while 循环以蛮力的方式制作这些字符串,但我想知道是否有任何方法可以让这个算法工作。
我用谷歌搜索了如何从正则表达式创建字符串,许多人似乎重定向到: https ://code.google.com/p/xeger/ 以使用已构建的库,但我想知道是否可以获得一些建议我自己的这些简单的正则表达式。