FAQ:WinAPI VCPP:поиск и замена в CString

Материал из Весельчак У
Перейти к: навигация, поиск

Как в CString можно найти или вырезать часть строки?

Это можно сделать при помощи методов класса CString:

// вырезает кусок строки
CString Mid(int nFirst) const;
CString Mid(int nFirst, int nCount) const;
 
// возвращает кусок строки (сначала или с конца)
CString Left(int nCount) const;
CString Right(int nCount) const;
 
// возвращает начальный кусок строки, в котором есть только
// символы из набора, представленного в lpszCharSet
CString SpanIncluding(LPCTSTR lpszCharSet) const;
 
// возвращает начальный кусок строки, в котором нет
// символов из набора, представленного в lpszCharSet
CString SpanExcluding(LPCTSTR lpszCharSet) const; 
 
// убирает "пробелоподобные" символы из самого начала строки.
// то есть - пробел, табуляцию (\t), возврат каретки, перевод строки (/r/n)
void TrimLeft();
 
// убирает все повторы символа из самого начала строки
void TrimLeft(TCHAR chTarget);
 
// убирает из самого начала строки все символа из набора lpszTargets 
void TrimLeft(LPCTSTR lpszTargets);
void TrimRight();
void TrimRight(TCHAR chTarget);
void TrimRight(LPCTSTR lpszTargets);
 
// поиск в строке
int Find(TCHAR ch) const;
int Find(LPCTSTR lpszSub) const;
int Find(TCHAR ch, int nStart) const;
int Find(LPCTSTR pstr, int nStart) const;
 
// поиск, начиная с конца
int ReverseFind(TCHAR ch) const;
 
// поиск позиции первого символа, одного из набора,
// представленного в lpszCharSet
int FindOneOf(LPCTSTR lpszCharSet) const;