ここまで、データ検索のサンプルとして、完全一致検索による、個人情報検索のコードを公開していますが、検索ワードの入力にフルネームを入力するのは、少し面倒なので、今回は、姓だけ、もしくは、名だけを入力しても、検索できる、部分一致の検索機能について紹介します。基能としては、For文により文字列の部分一致で抽出すれば可能なのですが、もう少し、高速に検索できるよう一工夫してあります。それは、検索結果を先に作成しておくというやり方です。これまでに、データ検索について、二分木探索などを利用した、高速な検索処理を紹介してきましたが、これに優るやり方は、ないのではないでしょうか?
皆さんもご存知の、あのGoogleの高速な検索処理の秘密は、世界中に存在する大容量のWebページの情報を事前に収集(クローリング)し、その情報を検索すると思われるワードで、検索結果を予め作成しているところにあります。この高速な検索処理と、独自のページ・ランキング評価により、検索結果の上位に優良なサイトが表示されるという、この2点が、Googleの現在の地位を築いた大きな要因だったと思います。
少し余談ですが、私自身、非常に面白く勉強になった本を一冊紹介します。
『Googleを支える技術』西田圭介著
ソースコードは、Microsoft社の製品 エクセル向けに書いたものなので、利用するには、ご使用のコンピュータに、エクセルがインストールされていることが、必須条件です。
以下は、サンプル画面です。
サンプルデータは、10000件の架空の個人情報です。このデータは、個人情報テストデータジェネレーターにより、作成したサンプルデータです。従って、サンプルデータに含まれる個人名などの情報は、実在の人物とはまったく関係ありません。
検索処理にSchSearch、SchSearchEx、SchSearchEx2関数を用意していますが、MstGetMasterData関数内に、それ以外の2つの関数のために、つくっているデータがありますので、それらについては、削除することができます。
作者は、本ソフトウェアの使用または使用不能から生じるコンピュータの故障、情報の消失、その他あらゆる直接的及び間接的被害に関して一切の責任を負いません。
ご使用にあたり、改善の要望、不具合の発生等ありましたら、画面下のアドレスまで、ご連絡頂きますよう、宜しくお願いいたします。ご面倒、ご不便をお掛けしますが、宜しくお願いいたします。