クラス langedge::mbcsutil::ACSearch

Aho-Corasick 法による複数キーワード検索クラス. [詳細]

#include <mbcsutil.h>

すべてのメンバ一覧

Public メソッド

 ACSearch (const std::vector< std::string > &patterns, int property=0)
 コンストラクタ.
 ACSearch (const char *const *patterns, int property=0)
 コンストラクタ.
 ~ACSearch ()
 デストラクタ
int search (const std::string &text, size_t &pattlen) const
 検索
const char * search (const char *text, size_t textlen, size_t &pattlen) const
 検索


説明

Aho-Corasick 法による複数キーワード検索クラス.

日本語 (euc/sjis) 対応。また、英文字については大文字・小文字の違いを 無視した検索もサポート。

まず、複数キーワードを与えてオブジェクトを生成する。 このとき、後でマッチングの際に参照されるテーブルなどが作成される。


コンストラクタとデストラクタ

langedge::mbcsutil::ACSearch::ACSearch const std::vector< std::string > &  patterns,
int  property = 0
 

コンストラクタ.

引数:
patterns 複数キーワード(パターン)列
property 文字列検索属性 (enum MBCSProperty の値 のビット和; 英字ケースの無視や文字コード)
デフォルトは、英字ケース保存、デフォルト漢字コード

langedge::mbcsutil::ACSearch::ACSearch const char *const *  patterns,
int  property = 0
 

コンストラクタ.

引数:
patterns 複数キーワード(パターン)ポインタの配列。末尾は NULL。 各キーワードは、nul 文字で終端する。
property 文字列検索属性 (enum MBCSProperty の値 のビット和; 英字ケースの無視や文字コード)
デフォルトは、英字ケース保存、デフォルト漢字コード

langedge::mbcsutil::ACSearch::~ACSearch  ) 
 

デストラクタ


関数

int langedge::mbcsutil::ACSearch::search const std::string &  text,
size_t &  pattlen
const
 

検索

引数:
text 検索対象テキスト
pattlen 見つかったパターンの長さを返す
戻り値:
いずれかのパターンに最初にマッチした位置 (先頭からのバイト長)。 マッチする部分が見つからなければ -1 を返す。

const char* langedge::mbcsutil::ACSearch::search const char *  text,
size_t  textlen,
size_t &  pattlen
const
 

検索

引数:
text 検索対象テキスト
textlen 検索対象テキストのバイト長 ( 0 なら nul文字で終端するまで)
pattlen 見つかったパターンの長さを返す
戻り値:
いずれかのパターンに最初にマッチした部分を指すポインタ。 マッチする部分が見つからなければ NULL を返す。


このクラスの説明は次のファイルから生成されました:
LangEdge ライブラリに対してFri May 6 22:43:04 2005に生成されました。  doxygen 1.4.2