みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

文字列の検索アルゴリズム

「私は世界一頭がいいので、数学なんか簡単すぎていいかげん飽きてきた。」

この文字列から「いいかげん」を検索するアルゴリズムにはどんなものがあるのでしょうか?

条件
・100KB(5万字)程度のデータから10文字程度指定文字列を検索する。
・100KBと元データもそれほど大きくないので、プログラムが簡単なアルゴリズムが良い。
・そのアルゴリズムの解説がインターネット上にあること。

単純に「い」を探して合致したら次の文字も「い」であることを確認。
さらに次の文字が「か」であることを確認。
さらに・・・「げ」・・「ん」
とやっていく方法でも良いとは思うのですが、もしかしたらもっとお手軽かつ高速にできる方法があるのかなと思い質問してみました。
なければないという回答でもかまいません。

また、参考までにテキストエディタ等がどのようなアルゴリズムを用いているのか知っている方(推測できる方)はその方法についても教えて頂ければと思います。

よろしくお願いします。

投稿日時 - 2006-08-19 21:47:46

QNo.2349688

困ってます

質問者が選んだベストアンサー

BM(Boyer-Moore)法

参考URL:http://www.pc-view.net/Solution/040120/page74.html

投稿日時 - 2006-08-19 21:55:19

お礼

リンク先読みました。
この方法でよさそうで、これで行こうかと思案中です。
迅速な回答ありがとうございました。

投稿日時 - 2006-08-19 22:24:21

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

検索アルゴリズムについてはさっぱりですが、
下記ページの[検索・探索ルーチン]に詳しく書かれています。

http://www2.starcat.ne.jp/~fussy/algo/index.htm

"grep 検索 アルゴリズム"などのキーワードでgoogleにて
色々見つかるかもしれません。

投稿日時 - 2006-08-19 21:56:46

お礼

リンク先ぱっと見少し難しそうですが、時間があるときにでも読んでみたいと思います。
回答ありがとうございます。

投稿日時 - 2006-08-19 22:37:37

あなたにオススメの質問