CStringT::Replace
Версии 2 Replace. Первая версия заменяет один или несколько копий подстроки с помощью другой подстроки. Обе функции substring null- завершены. Вторая версия заменяет один или несколько копий символов с помощью другого символа. Обе версии оперируют символьные данные, хранящиеся в CStringT.
int Replace(
PCXSTR pszOld,
PCXSTR pszNew
);
int Replace(
XCHAR chOld,
XCHAR chNew
);
Параметры
pszOld
Указатель на null- завершенной строке, которая будет заменить pszNew.pszNew
Указатель на null- завершенной строке, которая заменит pszOld.chOld
Символ, который будет заменить chNew.chNew
Символ, заменив chOld.
Возвращаемое значение
Возвращает число экземпляров замененных символов или подстрок или нуль, если строка не изменена.
Заметки
Replace может изменяться длина строки, так как pszNew и pszOld не должны иметь одинаковую длину и несколько копий старой подстроки можно изменить на новый. Функция выполняется с учетом регистра совпадение.
Примеры экземпляров CStringTCString, CStringA и CStringW.
Для CStringA, Replace работает с символами ANSI или multibyte (mbcs). Для CStringW рабочие Replace с расширенными символами.
Для CString, тип символьных данных, выбрав во время компиляции, основываясь на константы, определенные в следующей таблице.
Указанная константа |
Тип символьных данных |
---|---|
_UNICODE |
Расширенные символы |
_MBCS |
Символы Multi- байта |
Ни одного |
Символы Единый- байта |
Оба |
Не определено |
Пример
// 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);
Требования
заголовок: cstringt.h