티스토리 뷰

목차

    반응형

    MFC 문자 찾기 함수 Find(), ReverseFind() (문자열에서 문자 찾기)


    MFC 문자 찾기 함수 Find(), ReverseFind() (문자열에서 문자 찾기)


    문자열에서 원하는 문자를 찾으려면 Find와 ReverseFind함수를 사용하면 됩니다. 간단한 예제를 보죠.


    1
    2
    3
    4
    5
    6
    7
    CString target("");
    char tok = '_';
    int index = 0;
     
    target = "MFC_cstring_example";
     
    index = target.Find(tok);
    cs


    찾기 성공 : 문자 위치 (인덱스) 반환

    찾기 실패 : -1 반환

    7번 라인 : target 문자열에서 '_' 언더바를 찾아 인덱스를 반환합니다.


    MFC Find 결과


    근데, 왼쪽, 즉 앞에서 찾는 게 아니라 뒤에서 찾고 싶다면? 그땐 ReverseFind()란 함수를 사용하면 됩니다.


    MFC ReverseFind 결과


    결과가 다르죠?


    그리고, 조금 응용을 해보죠. 찾고 싶은 문자가 아니라 여러 개라면 아래처럼 문자 배열을 만들어 사용할 수 있습니다.


    1
    2
    3
    4
    5
    6
    7
    8
    CString target("");
    char tok[3= { '_''/''=' };
    int index[3= { 0, };
     
    target = "MFC_EXAM/PLE=FUNNY";
     
    for (int i = 0; i < 3; i++)
        index[i] = target.Find(tok[i]);
    cs


    [결과]


    MFC Find 배열 결과


    다 찾았네요. 만약 못 찾으면 -1을 반환하니 참고하세요.


    MFC 문자 찾기 함수 Find(), ReverseFind() (문자열에서 문자 찾기)

    반응형