CStringT::Replace

Esistono due versioni Replace. La prima versione sostituisce una o più copie di una sottostringa tramite un'altra sottostringa.Entrambe le sottostringhe sono con terminazione null.La seconda versione sostituisce una o più copie di un carattere utilizzando un altro carattere.Entrambe le versioni utilizzano dati di tipo carattere archiviati in CStringT.

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

Parametri

  • pszOld
    Un puntatore a una stringa con terminazione null da sostituire da pszNew.

  • pszNew
    Un puntatore a una stringa con terminazione null che sostituisce pszOld.

  • chOld
    Il carattere da sostituire da chNew.

  • chNew
    Il carattere che sostituisce chOld.

Valore restituito

Restituisce il numero di istanze sostituite carattere o la sottostringa, o zero se la stringa non viene modificata.

Note

Replace può modificare la lunghezza della stringa perché pszNew e pszOld non devono essere la stessa lunghezza e più copie della sottostringa precedente possono essere modificate al nuovo.La funzione esegue un confronto con distinzione tra maiuscole e minuscole.

Esempi di istanze CStringT sono CString, CStringAe CStringW.

Per CStringA, funzionamento Replace con ANSI o i caratteri multibyte (MBCS).Per CStringW, il funzionamento Replace con i caratteri di tipo " wide ".

Per CString, il tipo di dati carattere selezionato in fase di compilazione, in base a se le costanti nella tabella seguente vengono definite.

Costante definita

Tipo di dati carattere

_UNICODE

Caratteri di tipo " wide "

_MBCS

Caratteri a più byte

Nessuno

Caratteri a byte singolo

Entrambe le dimensioni

Non definito

Esempio

// 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);   

Requisiti

intestazione: cstringt.h

Vedere anche

Riferimenti

Classe di CStringT