Lumino
ln::StringHelper Class Reference

文字列ユーティリティ More...

#include <StringHelper.hpp>

Static Public Member Functions

template<typename TChar >
static bool match (const TChar *pattern, const TChar *str)
 ワイルドカード('*', '?')を考慮して文字列を比較する More...
 
template<typename TChar >
static int8_t toInt8 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static uint8_t toUInt8 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static int16_t toInt16 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static uint16_t toUInt16 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static int32_t toInt32 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static uint32_t toUInt32 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static int64_t toInt64 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static uint64_t toUInt64 (const TChar *str, int len=-1, int base=0, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を整数値に変換します。 More...
 
template<typename TChar >
static double toDouble (const TChar *str, int len=-1, const TChar **outEndPtr=NULL, NumberConversionResult *outResult=NULL)
 文字列を実数値に変換します。 More...
 

Detailed Description

文字列ユーティリティ

Member Function Documentation

◆ match()

template<typename TChar >
static bool ln::StringHelper::match ( const TChar *  pattern,
const TChar *  str 
)
static

ワイルドカード('*', '?')を考慮して文字列を比較する

Parameters
[in]pattern: ワイルドカードを含むパターン文字列
[in]str: 比較対象の文字列

◆ toDouble()

template<typename TChar >
static double ln::StringHelper::toDouble ( const TChar *  str,
int  len = -1,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を実数値に変換します。

次の書式に従い、文字列を数値に変換します。
[whitespace] [sign] [digits] [.digits] [ {e | E }[sign]digits]

この変換処理はロケールに依存せず、'.' を小数点とみなします。 ※標準関数の strtod はロケールに依存し、例えばフランス語として設定されている場合、',' を小数点として認識してしまいます。('.' はエラーとなります) JSON 等の '.' が小数点として定められている文字列を変換する場合、この関数を使用します。

◆ toInt16()

template<typename TChar >
static int16_t ln::StringHelper::toInt16 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toInt32()

template<typename TChar >
static int32_t ln::StringHelper::toInt32 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toInt64()

template<typename TChar >
static int64_t ln::StringHelper::toInt64 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toInt8()

template<typename TChar >
static int8_t ln::StringHelper::toInt8 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toUInt16()

template<typename TChar >
static uint16_t ln::StringHelper::toUInt16 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toUInt32()

template<typename TChar >
static uint32_t ln::StringHelper::toUInt32 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toUInt64()

template<typename TChar >
static uint64_t ln::StringHelper::toUInt64 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。

◆ toUInt8()

template<typename TChar >
static uint8_t ln::StringHelper::toUInt8 ( const TChar *  str,
int  len = -1,
int  base = 0,
const TChar **  outEndPtr = NULL,
NumberConversionResult outResult = NULL 
)
static

文字列を整数値に変換します。

Parameters
[in]str: 変換元の文字列
[in]len: str の文字数 (-1 を指定すると \0 まで変換する)
[in]base: 基数 (0、2、8、10、16 のいずれかであること)
[in]outEndPtr: スキャンの終了位置を格納する変数のポインタ
[in]outResult: エラーコードを格納する変数のポインタ
Returns
変換結果の数値

次の書式に従い、文字列を数値に変換します。
[whitespace] [{+ | – }] [0 [{ x | X }]] [digits | letters]
16 進数値のアルファベットは大文字と小文字を区別しません。

基数に 0 を指定すると、文字列の先頭文字から基数を自動判別します。
"0x" または "0X" であれば 16 進数、"0" であれば 8 進数、それ以外であれば 10 進数です。 基数に 8 または 16 が指定されている際、文字列の先頭は "0" または "0x" である必要はありません。<br>

outEndPtr は C言語の strtol() のように使用します。 この値が str+len と一致しなければ、文字列が全て読み取られなかったことを示します。


The documentation for this class was generated from the following file: