1

オートマトン正規表現と最小文字列長(int)を受け入れ、可能な文字列を生成できるようなプログラムをJavaで作成するにはどうすればよいですか?

正規表現の例は次のとおりです。

regex             possible strings
(a+b)*            abbababababbbab
ab(a+b)           ababababab, abaaaa, abbbbb, abbaba, . . .
4

2 に答える 2

2
  1. オートマトンをコンパイルする(標準のオートマトン教科書演習)
  2. エッジに沿って歩き、使用するシンボルを記録してオートマトンをシミュレートします(必要に応じて並列シミュレーションに分岐します)
  3. 受け入れ状態に達するたびに、現在の文字列を出力します。
于 2012-02-07T13:14:49.473 に答える
0

この投稿で言及されているこのライブラリ(ランダムで一致する文字列を生成すると思います)はおそらく有用です

正規表現を使用して文字列を一致させるのではなく生成する

于 2012-02-07T13:26:59.343 に答える