TNB Library
静的公開メンバ関数 | 全メンバ一覧
CStrOperatorT< TYP > クラステンプレート

文字列操作クラス [詳解]

#include <TnbStrOperator.h>

静的公開メンバ関数

static CStrT< TYP > BinaryToHexString (const IConstCollectionT< BYTE > &c)
 [作成] バイナリ→HEX文字列 [詳解]
 
static CStrT< TYP > BinaryToHexString (size_t dataSize, LPCVOID P)
 [作成] バイナリ→HEX文字列 [詳解]
 
static CStrT< TYP > ConnectLines (const CVectorT< CStrT< TYP > > &vs, const TYP *lpszCR=NULL)
 [取得] 各行連結 [詳解]
 
static const TYP * FindCr (const TYP *lpsz)
 [検索] 改行位置検索. [詳解]
 
static const TYP * GetLine (CStrT< TYP > &_strLine, const TYP *lpsz)
 [取得] 一行取り出し [詳解]
 
static CByteVector HexStringToBinary (const TYP *lpszHex)
 [作成] HEX文字列→バイナリ [詳解]
 
static CVectorT< CStrT< TYP > > SeparateLine (const TYP *lpsz)
 [取得] 改行毎分離 [詳解]
 
static CVectorT< CStrT< TYP > > SeparatePeriod (const TYP *lpsz, const TYP *lpszMark, bool isCheckDc=true)
 [取得] トークン区切取得 [詳解]
 
static CVectorT< CStrT< TYP > > SeparatePeriod (const TYP *lpsz, TYP mark, bool isCheckDc=true)
 [取得] トークン区切取得 [詳解]
 
static CStrT< TYP > TabToSpace (const TYP *lpsz, int iTabStep=4)
 タブコードをスペースに変換します。
改行は含まないようにしてください。 [詳解]
 

詳解

template<typename TYP>
class TNB::CStrOperatorT< TYP >

文字列操作クラス

文字列操作関数群を クラス関数で持っています。
必要ファイル
TnbStrOperator.h
日付
06/05/05 新規作成
06/10/27 テンプレート化
07/07/07 クラス名変更。

TnbStrOperator.h43 行目に定義があります。

関数詳解

◆ BinaryToHexString() [1/2]

static CStrT< TYP > BinaryToHexString ( const IConstCollectionT< BYTE > &  c)
static

[作成] バイナリ→HEX文字列

覚え書き
指定データをHEX文字列表記文字列に変換します。
引数
cデータ
戻り値
HEX文字列

TnbStrOperator.h242 行目に定義があります。

◆ BinaryToHexString() [2/2]

static CStrT< TYP > BinaryToHexString ( size_t  dataSize,
LPCVOID  P 
)
static

[作成] バイナリ→HEX文字列

覚え書き
指定データをHEX文字列表記文字列に変換します。
引数
dataSizeデータサイズ
Pデータアドレス
戻り値
HEX文字列

TnbStrOperator.h265 行目に定義があります。

◆ ConnectLines()

static CStrT< TYP > ConnectLines ( const CVectorT< CStrT< TYP > > &  vs,
const TYP *  lpszCR = NULL 
)
static

[取得] 各行連結

覚え書き
各行を改行で連結します。
引数
vs各行情報
lpszCR改行コード。省略すると 0x0D, 0x0A になります。
戻り値
連結結果

TnbStrOperator.h116 行目に定義があります。

◆ FindCr()

static const TYP * FindCr ( const TYP *  lpsz)
static

[検索] 改行位置検索.

指定文字列から改行の位置を検索します

覚え書き
¥r(0x0D), ¥n(0x0A), ¥r¥n(0x0D,0x0A) いずれも対応します。
引数
lpsz文字列(開始ポインタ)
戻り値
NULL改行なし
NULL以外改行の位置。

TnbStrOperator.h55 行目に定義があります。

◆ GetLine()

static const TYP * GetLine ( CStrT< TYP > &  _strLine,
const TYP *  lpsz 
)
static

[取得] 一行取り出し

覚え書き
指定データから一行を取り出します
引数
[out]_strLine取得した一行
[in]lpszデータの頭
戻り値
改行の次のポインタ。末ならNULLが返ります。

TnbStrOperator.h78 行目に定義があります。

◆ HexStringToBinary()

static CByteVector HexStringToBinary ( const TYP *  lpszHex)
static

[作成] HEX文字列→バイナリ

覚え書き
指定データをHEX文字列表記文字列に変換します。
アンダーバー、スペース、タブ、改行、ハイフンは、無視します。
途中でHEX以外の文字があると、そこまでの処理をします。
引数
lpszHexHEX文字列
戻り値
バイナリデータ。

TnbStrOperator.h279 行目に定義があります。

◆ SeparateLine()

static CVectorT< CStrT< TYP > > SeparateLine ( const TYP *  lpsz)
static

[取得] 改行毎分離

覚え書き
指定データを改行ごとに分離します。
引数
lpszデータの頭
戻り値
分離した結果

TnbStrOperator.h141 行目に定義があります。

◆ SeparatePeriod() [1/2]

static CVectorT< CStrT< TYP > > SeparatePeriod ( const TYP *  lpsz,
const TYP *  lpszMark,
bool  isCheckDc = true 
)
static

[取得] トークン区切取得

覚え書き
指定文字列を指定区切り文字で分割し取り出します。
引数
lpsz分割元文字列
lpszMark区切り文字セット
isCheckDctrueなら ダブルコーテーションを考慮。 その間の区切り文字は区切り文字として扱いません。 また、くくっているダブルコーテーションも削除します。 (ただし、区切り文字とダブルコーテーションの間にスペースがあると、認識されません)
戻り値
分割した文字列

TnbStrOperator.h167 行目に定義があります。

◆ SeparatePeriod() [2/2]

static CVectorT< CStrT< TYP > > SeparatePeriod ( const TYP *  lpsz,
TYP  mark,
bool  isCheckDc = true 
)
static

[取得] トークン区切取得

覚え書き
指定文字列を指定区切り文字で分割し取り出します。
引数
lpsz分割元文字列
mark区切り文字
isCheckDctrueなら ダブルコーテーションを考慮。 その間の区切り文字は区切り文字として扱いません。 また、くくっているダブルコーテーションも削除します。 (ただし、区切り文字とダブルコーテーションの間にスペースがあると、認識されません)
戻り値
分割した文字列

TnbStrOperator.h230 行目に定義があります。

◆ TabToSpace()

static CStrT< TYP > TabToSpace ( const TYP *  lpsz,
int  iTabStep = 4 
)
static

タブコードをスペースに変換します。
改行は含まないようにしてください。

引数
lpsz元のテキスト。
iTabStepタブステップ数。省略すると4になります。
戻り値
タグコードの含まない文字列。

TnbStrOperator.h321 行目に定義があります。