私はたくさんの文字列を持っています (多分 50k-1M くらいで、どれも長すぎず、1-20 文字かもしれません)。これで任意の RegExp を取得し、一致するすべての文字列のリスト/イテレータを返す必要があります。これは、できるだけ速くする必要があります。
それを行うのに適したインデックス構造は何ですか?
現在、文字列の文字にツリーを構築しています。そして、RegExp を決定論的オートマトンに変換します。そして、そのオートマトンと木との交点を計算します。それは速いアプローチのように見えますが、他の可能性について疑問に思います。
追加の課題は、Unicode/UTF8 をサポートすることですが、今のところ、この質問をその部分に集中させたくありません。