示例#1
0
std::string GetNextToken(const char** str, const char* delimiters, const char* spaces)
{
    std::string result;
    if (str != NULL)
    {
        const char* s = SkipChars(*str, spaces);
        const char* t = FindChars(s, delimiters);
        const char* r = t;
        if (!IsEmpty(t))
        {
            while (t > s && ContainsChar(spaces, *(t - 1)))
            {
                --t;
            }
        }
        result.assign(s, t);
        *str = SkipChars(r, delimiters);
    }
    else
        throw CreateArgumentNullException();
    return result;
}
FORCEINLINE bool IsLiteralBreakChar(const TCHAR InChar)
{
	return ContainsChar(InChar, LiteralBreakChars);
}
FORCEINLINE bool IsValidEscapeChar(const TCHAR InChar)
{
	return ContainsChar(InChar, ValidEscapeChars);
}