Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esta função global pode ser usada para extrair uma subseqüência de caracteres de uma seqüência de caracteres de determinada fonte.
BOOL AFXAPI AfxExtractSubString (
CString& rString,
LPCTSTR lpszFullString,
int iSubString,
TCHAR chSep = '\n'
);
Parâmetros
rString
- Referência a um CString objeto receberá uma subseqüência de caracteres individual.
lpszFullString
- Seqüência de caracteres contendo o texto completo da cadeia de caracteres a extrair.
iSubString
- Índice baseado em zero da subseqüência extrair de lpszFullString.
chSep
- Caractere separador usado para delimitar substrings.
Valor de retorno
TRUE se a função extraídos com êxito a substring no índice fornecido; Caso contrário, FALSE.
Comentários
Essa função é útil para extrair várias substrings de uma string de origem quando um único caractere conhecido separa cada subseqüência.Esta função de pesquisa do início do lpszFullString cada vez que ele é chamado de parâmetro.
Esta função retornará FALSE se ambos lpszFullString é definido como Nulo ou a função atinge o final da lpszFullString sem Localizando iSubString+ 1 ocorrências do caractere separador especificado.O rString parâmetro não será modificado de seu valor original se lpszFullString foi definido para Nulo; Caso contrário, o rString parâmetro for definido como uma seqüência vazia se não foi possível extrair a subseqüência de caracteres para o índice especificado.
Exemplo
// 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);
}
Requisitos
Cabeçalho: <afxwin.h>