AfxExtractSubString

此全局函式可用於從特定源字元串中提取子字元串。

BOOL AFXAPI AfxExtractSubString ( CString& rString, LPCTSTR lpszFullString, int iSubString, TCHAR chSep = '\n');

參數,返回值,備註,示例,要求,

參數

rString CString將得到一個單獨的子字元串的對象。
lpszFullString 字元串包含字元串的全文提取自。
iSubString 提取的子字元串的從零開始的索引從lpszFullString
chSep 使用的分隔設定分隔子字元串。

返回值

TRUE ,如果函式成功提取了該子字元串中提供的索引;否則, FALSE

備註

在已知的單個字元分隔每個子字元串時,此功能可用於從源字元串中提取多個子字元串。
rString 保存輸出的子字元串
lpszFullString 待分割的字元串
iSubString 提取的子字元串的序號,從0開始。假如你想提取第3段,該參數就輸入2
chSep 用於分割的字元,默認的是'\n'
分割成功,就返回TRUE;iSubString越界,則返回FALSE

示例

// The following example extracts a series of name, value pairs from a
// given source string:
// Input string consisting of a number of name, value pairs
LPCTSTR lpszSource = _T("\"Name\"=\"John Smith\"\n")
_T("\"Company\"=\"Contoso, Ltd\"\n\"Salary\"=\"25,000\"");
CString strNameValue; // an individual name, value pair
int i = 0; // substring index to extract
while (AfxExtractSubString(strNameValue, lpszSource, i))
{
// Prepare to move to the next substring
i++;
CString strName, strValue; // individual name and value elements
// Attempt to extract the name element from the pair
if (!AfxExtractSubString(strName, strNameValue, 0, _T('=')))
{
// Pass an error message to the debugger for display
OutputDebugString(_T("Error extracting name\r\n"));
continue;
}
// Attempt to extract the value element from the pair
if (!AfxExtractSubString(strValue, strNameValue, 1, _T('=')))
{
// Pass an error message to the debugger for display
OutputDebugString(_T("Error extracting value element\r\n"));
continue;
}
// Pass the name, value pair to the debugger for display
CString strOutput = strName + _T(" equals ") + strValue + _T("\r\n");
OutputDebugString(strOutput);
}

要求

表頭: <afxwin.h>

相關詞條

熱門詞條

聯絡我們