|
TNB Library
|
正規表現ファインダクラス [詳解]
#include <TnbRegularExpression.h>
公開メンバ関数 | |
| CFinder (const CRegularExpressionT *P=NULL, ITE is=ITE(), ITE ie=ITE()) | |
| コンストラクタ [詳解] | |
| const CVectorT< CStrT< TYP > > & | GetFoundGroupString (void) const |
| [取得] マッチしたグループ文字列取得. [詳解] | |
| INDEX | GetFoundIndex (void) const |
| [取得] マッチした位置取得. [詳解] | |
| size_t | GetFoundSize (void) const |
| [取得] マッチした文字列長取得. [詳解] | |
| CStrT< TYP > | GetFoundString (void) const |
| [取得] マッチした文字列取得. [詳解] | |
| CStrT< TYP > | GetString (void) const |
| [取得] 置換結果文字列取得. [詳解] | |
| bool | IsFinding (void) const |
| [確認] 検索確認 [詳解] | |
| bool | Next (void) |
| [検索] 次検索 [詳解] | |
| bool | Replace (const TYP *lpsz) |
| [置換] 置き換え. [詳解] | |
正規表現ファインダクラス
順次検索が可能。また、必要に応じて置換することが可能です。
CRegularExpressionT<char> re;
re.SetPattern("([ABC])-");
CRegularExpressionT<char>::CFinder dd = re.GetFinder("A-B-9C!C-!");
if ( dd.IsFinding() )
{
do{
TRACE2A("index = %d,[%s]\n", dd.GetFoundIndex(), dd.GetFoundString() );
dd.Replace("ZZ\\1");
TRACE1A("[%s]\n", dd.GetString() );
}
while( dd.Next() );
TRACE1A("[%s]\n", dd.GetString() );
}
|
TnbRegularExpression.h の 1490 行目に定義があります。
| CFinder | ( | const CRegularExpressionT * | P = NULL, |
| ITE | is = ITE(), |
||
| ITE | ie = ITE() |
||
| ) |
コンストラクタ
| P | 正規表現管理クラスのインスタンス。 |
| is | 対象情報の開始イテレータ。 |
| ie | 対象情報の終了番兵イテレータ。省略するとデフォルトの番兵になります。 |
TnbRegularExpression.h の 1509 行目に定義があります。
| INDEX GetFoundIndex | ( | void | ) | const |
| size_t GetFoundSize | ( | void | ) | const |
[取得] マッチした文字列長取得.
TnbRegularExpression.h の 1617 行目に定義があります。
| CStrT< TYP > GetFoundString | ( | void | ) | const |
[取得] マッチした文字列取得.
TnbRegularExpression.h の 1607 行目に定義があります。
| CStrT< TYP > GetString | ( | void | ) | const |
[取得] 置換結果文字列取得.
TnbRegularExpression.h の 1646 行目に定義があります。
| bool IsFinding | ( | void | ) | const |
[確認] 検索確認
| true | 検索中(GetFound系、 Replace() メソッド有効) |
| false | 検索なし |
TnbRegularExpression.h の 1520 行目に定義があります。
| bool Next | ( | void | ) |
[検索] 次検索
| true | 次検索成功(GetFound系、 Replace() メソッド有効) |
| false | 次なし |
TnbRegularExpression.h の 1531 行目に定義があります。
| bool Replace | ( | const TYP * | lpsz | ) |
[置換] 置き換え.
| lpsz | 置換文字列。 |
| true | 成功。 |
| false | 失敗。 |
TnbRegularExpression.h の 1565 行目に定義があります。