クラス langedge::mbcsutil::MBCSSearch

Boyer-Moore 法と力まかせ法を併用した文字列検索クラス. [詳細]

#include <mbcsutil.h>

すべてのメンバ一覧

Public メソッド

 MBCSSearch (const char *pattern, int property=0, size_t pattlen=0)
 コンストラクタ.
 MBCSSearch (const unsigned char *pattern, int property=0, size_t pattlen=0)
 コンストラクタ.
 MBCSSearch (const std::string &pattern, int property=0)
 コンストラクタ.
 ~MBCSSearch ()
 デストラクタ.
const std::string & getPattern () const
 パターン取得
const char * search (const char *text, size_t textlen=0) const
 パターン検索.
const unsigned char * search (const unsigned char *text, size_t textlen=0) const
 パターン検索.
int search (const std::string &text) const
 パターン検索.
size_t match (const char *text) const
 パターン比較.
size_t match (const unsigned char *text) const
 パターン比較.
size_t match (const std::string &text) const
 パターン比較.


説明

Boyer-Moore 法と力まかせ法を併用した文字列検索クラス.

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

まず、照合パターン文字列を与えてオブジェクトを生成する。 このとき、後でマッチングの際に参照されるテーブルなどが作成される。


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

langedge::mbcsutil::MBCSSearch::MBCSSearch const char *  pattern,
int  property = 0,
size_t  pattlen = 0
 

コンストラクタ.

引数:
pattern 照合パターン文字列
property 文字列検索属性 (enum MBCSProperty の値 のビット和; 英字ケースの無視や文字コード)
デフォルトは、英字ケース保存、デフォルト漢字コード
pattlen 照合パターン文字列の長さ(バイト長)
(0 なら、パターン文字列中に nul が見つかるまで)

langedge::mbcsutil::MBCSSearch::MBCSSearch const unsigned char *  pattern,
int  property = 0,
size_t  pattlen = 0
 

コンストラクタ.

参照:
同上

langedge::mbcsutil::MBCSSearch::MBCSSearch const std::string &  pattern,
int  property = 0
 

コンストラクタ.

参照:
同上

langedge::mbcsutil::MBCSSearch::~MBCSSearch  ) 
 

デストラクタ.

実装オブジェクトを破棄する


関数

const std::string& langedge::mbcsutil::MBCSSearch::getPattern  )  const
 

パターン取得

const char* langedge::mbcsutil::MBCSSearch::search const char *  text,
size_t  textlen = 0
const
 

パターン検索.

コンストラクタで指定した照合パターンを検索する。

引数:
text 検索対象テキスト文字列
textlen 検索対象テキスト文字列の長さ
(0 なら、テキスト中に nul が見つかるまで)
戻り値:
パターンが見つかった位置を示すポインタ
NULL ならパターンが見つからなかったことを表す。
事前条件:
text != NULL かつ text[textlen] が正当なデータであること
ただし、text[textlen] == 0 である必要はない

const unsigned char* langedge::mbcsutil::MBCSSearch::search const unsigned char *  text,
size_t  textlen = 0
const
 

パターン検索.

参照:
同上

int langedge::mbcsutil::MBCSSearch::search const std::string &  text  )  const
 

パターン検索.

コンストラクタで指定した照合パターンを検索する。

引数:
text 検索対象テキスト文字列
戻り値:
パターンが見つかった位置 (先頭からのバイトオフセット) -1 ならパターンが見つからなかったことを表す。

size_t langedge::mbcsutil::MBCSSearch::match const char *  text  )  const
 

パターン比較.

対象テキストと照合パターンを比較する

引数:
text 対象テキスト
戻り値:
テキストの先頭部分がパターンと一致すれば、パターン長を返す 一致しなければ 0 を返す
事前条件:
text != NULL

size_t langedge::mbcsutil::MBCSSearch::match const unsigned char *  text  )  const
 

パターン比較.

参照:
同上

size_t langedge::mbcsutil::MBCSSearch::match const std::string &  text  )  const
 

パターン比較.

参照:
同上


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