단어 검색 방법

2018-12-02 03:00:55 | 조회수 1352


소스 중에 단어 검색을 다음과 같이 진행하고 있습니다.


int sptr = page.find(bodyStart) + bodyStart.length(), eptr = page.find(bodyEnd);

string chk = "";


for (int i = sptr; i<eptr; i++) {

    if (page[i] >= 'a' && page[i] <= 'z') chk += page[i];

    else {

        if (chk == word) db[content].basic++;

        chk = "";

    }

}


단어 이외의 모든 문자열을 단어를 구분하는 구분자로 사용하므로, a~z일 때(전처리로 모두 소문자로 변형하였습니다.)는 string에 추가해주고, 아닐 때는 매칭되는지만 검사한 후, 검사하는 string을 다시 빈 문자열로 돌려주면 완벽한 단어 매칭을 할 수 있습니다.


단어 검색 방법 - 알고리즘닷컴
32 개의 글