CStringT::Replace
Istnieją dwie wersje Replace.Pierwsza wersja zastępuje jeden lub kilka egzemplarzy podciągu przy użyciu innego podciąg.Podciągi zarówno zakończony znakiem null.Druga wersja zastępuje jeden lub kilka egzemplarzy znak przy użyciu innego znaku.Obie wersje operują na danych znakowych przechowywanych w CStringT.
int Replace(
PCXSTR pszOld,
PCXSTR pszNew
);
int Replace(
XCHAR chOld,
XCHAR chNew
);
Parametry
pszOld
Wskaźnik na ciąg zakończony znakiem null, zastępuje się pszNew.pszNew
Wskaźnik ciąg zakończony znakiem null, który zastępuje pszOld.chOld
Znak zastępuje się przez chNew.chNew
Zastępowanie znaków chOld.
Wartość zwracana
Zwraca liczbę wystąpień zastąpiona znaku podciągu lub zero, jeśli ciąg nie jest zmieniana.
Uwagi
Replacemożna zmienić długość ciągu, ponieważ pszNew i pszOld nie muszą mieć taką samą długość i kilka kopii stare podciągu można zmienić na nową.Funkcja wykonuje wielkooć liter.
Examples of CStringT instances are CString, CStringA, and CStringW.
Dla CStringA, Replace działa z ANSI lub znaków wielobajtowych (MBCS).Dla CStringW, Replace działa z szerokości znaków.
Dla CString, typ danych znak jest zaznaczone w czasie kompilacji oparte na czy stałych w poniższej tabeli są zdefiniowane.
Stała zdefiniowane |
Typ danych znaków |
---|---|
_UNICODE |
Szerokości znaków |
_MBCS |
Znaki wielobajtowe |
Ani |
Znaki jednobajtowe |
Zarówno |
Niezdefiniowana |
Przykład
// 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);
Wymagania
Nagłówek: cstringt.h