[MFC] CString 문자열 검색 함수 - Find, ReverseFind
CString 문자열 검색 관련 함수 중 Find(), ReverseFind()에 관한 내용이다.
※요약
Find : CString 개체의 문자열 기준, 좌측에서부터 문자 혹은 문자열을 검색
ReverseFind : CString 개체의 문자열 기준, 우측(역순)에서부터 문자를 검색
※특징
Find나 ReverseFind의 반환값은 0 ~ (문자열 길이 n-1)이다.
찾으려는 문자열이 없을 경우 -1을 리턴한다.
※함수 원형 및 설명
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | int Find( TCHAR ch ) const ; //ch : 검색할 단일 문자 //반환값 : 검색된 위치, 실패 시 -1 int Find( TCHAR ch, int nStart ) const ; //ch : 검색할 단일 문자 //nStart : 검색을 시작할 위치. 생략 시 디폴트 값 0 //반환값 : 검색된 위치, 실패 시 -1 int Find( LPCTSTR lpszSub ) const ; //lpszSub : NULL로 종결되는 검색할 문자열 //반환값 : 검색된 위치, 실패 시 -1 int Find( LPCTSTR lpszSub, int nStart ) const ; //lpszSub : NULL로 종결되는 검색할 문자열 //nStart : 검색을 시작할 위치. 생략 시 디폴트 값 0 //반환값 : 검색된 위치, 실패 시 -1 int ReverseFind( TCHAR ch ) const ; //ch : 검색할 단일 문자 //반환값 : 검색된 위치, 실패 시 -1 |
※예제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <atlstr.h> //CString int main( ) { int nIndex = 0; CString strDate( "2013-12-16" ); nIndex = str.Find( '0' ); printf ( "%d\n" , nIndex ); nIndex = str.Find( '12' ); printf ( "%d\n" , nIndex ); nIndex = str.ReverseFind( '-' ); printf ( "%d\n" , nIndex ); return 0; }
|
[MFC] CString 문자열 추출 함수 - Left, Mid, Right
※요약
Left : CString 개체의 문자열에서 왼쪽을 기준으로 문자열 추출
Mid : CString 개체의 문자열에서 지정한 중간 부분의 문자열 추출
Right : CString 개체의 문자열에서 오른쪽을 기준으로 문자열 추출
※함수 원형 및 설명
1 2 3 4 5 6 7 8 9 10 11 12 13 | CString Left( int nCount ) const ; //nCount : 왼쪽 기준 추출할 문자의 수 //반환값 : 추출된 문자열을 포함하는 CString 임시 개체 CString Right( int nCount ) const ; //nCount : 오른쪽 기준 추출할 문자의 수 //반환값 : 추출된 문자열을 포함하는 CString 임시 개체 CString Mid( int nFirst ) const ; CString Mid( int nFirst, int nCount ) const ; //nFirst : 추출을 시작할 문자열의 위치 //nCount : 추출할 문자의 수 //반환값 : 추출된 문자열을 포함하는 CString 임시 개체 |
※예제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <atlstr.h> //CString int main( ) { CString strDate( "2013-12-16" ); CString strYear; CString strMonth; CString strDay; strYear = strDate.Left( 4 ); strMonth = strDate.Mid( 5, 2 ); strDay = strDate.Right( 2 ); printf ( "%s년 %s월 %s일" , strYear, strMonth, strDay ); return 0; } |
CString 문자열 대문자나 소문자로 변환하는 함수 MakeUpper() 와 MakeLower() 에 대한 내용이다.
※요약
MakeUpper : 모든 문자열을 대문자로 변환한다.
MakeLower : 모든 문자열을 소문자로 변환한다.
※특징
C언어 중 strupr, strlwr 함수와 비슷하다.
※함수 원형 및 설명
1 2 | void MakeUpper( ); void MakeLower( ); |
※예제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include <atlstr.h> //CString #define print(str) printf( "%s\n", str ) int main( ) { CString strText1 = "ABCDE" ; CString strText2 = "abcde" ; CString strText3 = "a1b2c3d4e" ; strText1.MakeLower( ); print( strText1 ); //abcde strText2.MakeUpper( ); print( strText2 ); //ABCDE strText3.MakeUpper( ); print( strText3 ); //A1B2C3D4E return 0; }
|
반응형
'차근차근 > C' 카테고리의 다른 글
폴더에서 파일리스트 가져오기 (0) | 2014.11.21 |
---|---|
[UNIX] 디렉토리함수 opendir(), readdir(), closedir(), lstat() (0) | 2014.11.20 |
[C/C++] 폴더 내 파일목록 읽기 (0) | 2014.11.19 |
<io.h> _finddata_t 구조체 (0) | 2014.11.19 |
하위폴더 파일 출력 / CFileFind Class (0) | 2014.11.19 |