2017-09-22 6 views
-1

多数の文字列(各ペアの間)でテキストマッチングを行い、重複したサブシーケンスを見つける必要があります。私はknuth morris prattアルゴリズムがこの仕事に最も適しているかどうかを知りたい私はPythonでこの機能が欲しいですし、文字列の大規模なセットに対してスケーラビリティが必要ですか?私はこれが最善の方法であるかのようなアドバイスを探していますか、スケーラブルで効率的な文字列マッチングを行うための良い方法がありますか?Pythonでの高速テキストマッチング

+0

正規表現操作の「re」モジュールでは、「re.match()」および「re.search()」メソッドが役に立ちます。とにかく、正確に必要なものをもっと明確にしてください。 – Ardit

答えて

0

TL;スケーラブル+効率= RegEx。


私はあなたが読むことをお勧めしますまず第一に:Regular Expression Matching Can Be Simple And Fast

RegExは、マッチングのためだけでなく、グループキャプチャとバックリファレンスの可能性も提供するため、おそらく最もスケーラブルなソリューションです。

さらに、PythonのreモジュールはC言語で書かれており、おそらくPythonで書かれているほとんどのコードより高速です。

Knuth-Morris-Prattアルゴリズムを使って簡単に部分文字列を検索する場合、現実世界の単語やフレーズ(これほど反復的ではありません)では、RegExが平均的に優れています。