Partilhar via


CStringT::Replace

Há duas versões de Replace. A primeira versão substitui uma ou mais cópias de uma subcadeia de caracteres usando outra subcadeia de caracteres. Ambas as subcadeias de caracteres NULL-são finalizadas. A segunda versão substitui uma ou mais cópias de um caractere usando outro caractere. Ambas as versões operam nos dados de caractere armazenados em CStringT.

int Replace(
   PCXSTR pszOld,
   PCXSTR pszNew
);
int Replace(
   XCHAR chOld,
   XCHAR chNew
);

Parâmetros

  • pszOld
    Um ponteiro para uma cadeia de caracteres NULL- finalizada a ser substituída por pszNew.

  • pszNew
    Um ponteiro para uma cadeia de caracteres NULL- finalizada que substitui pszOld.

  • chOld
    o caractere a ser substituído por chNew.

  • chNew
    o caractere que substitui chOld.

Valor de retorno

Retorna o número de instâncias substituídas de caracteres ou da subcadeia de caracteres, ou zero se a cadeia de caracteres não é alterada.

Comentários

Replace pode alterar o tamanho da cadeia de caracteres como pszNew e pszOld não precisam estar o mesmo tamanho, e várias cópias da subcadeia de caracteres antigo podem ser alteradas para o novo. A função executa uma correspondência diferencia maiúsculas de minúsculas.

Exemplos de instâncias de CStringT são CString, CStringA, e CStringW.

Para CStringA, Replace funciona com ANSI ou caracteres de multibyte (MBCS). Para CStringW, Replace funciona com caracteres largos.

Para CString, o tipo de dados de caractere é selecionado em tempo de compilação, com base em se as constantes na tabela são definidas.

Constante definida

Tipo de dados de caractere

_UNICODE

Caracteres largos

_MBCS

Vários caracteres de byte

Nenhum

Caracteres de byte único

Ambos

Undefined

Exemplo

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;

CAtlString strBang(_T("Everybody likes epee fencing"));
int n = strBang.Replace(_T("epee"), _T("foil"));
ASSERT(n == 1);   

Requisitos

Cabeçalho: cstringt.h

Consulte também

Referência

Classe de CStringT