블로그는 나의 힘!
[ Programing ]/Algorithm2011. 10. 10. 14:30


욕설 필터나 해당 문자를 검색할때 유용하다.
템플릿으로 설정 시 char type 이나 w_char type 에 모두 사용 가능 하니 참고 할 것.




 // 구조체나 클래스 멤버 함수로 적용시 static으로 설정하여 헤더에 적용한다.
 template< typename stl_, typename char_ >
 bool CheckProhibition( const stl_& strMessage, const char_* szProhibition )
 {
       if( 0 >= strMessage.size() ) return false;
       if( NULL == szProhibition ) return false;
  
         // 검색 실패
       if( std::string::npos == strMessage.find(szProhibition) )
            return false;
  
       return true;
 }



[ 사용법 ] 

 char* szProhibit[128] = { 0, };
 std::string strName;

 ...
 
 if( filterFunc.CheckProhibition<std::string, char>(strName, szProhibit) )
 {
       return false;
 }


 [ OR Unicode type ]

 w_char_t* szwProhibit[128] = { 0, };
 std::wstring strwName;

 ...
 
 if( filterFunc.CheckProhibition<std::wstring, w_char_t>(strwName, szwProhibit) )
 {
       return false;
 }

'[ Programing ] > Algorithm' 카테고리의 다른 글

VARIANT 해제  (0) 2013.05.21
길찾기 알고리즘 링크  (0) 2013.05.21
케릭터 간 거리 측정  (0) 2011.07.14
UTF-8을 Unicode로, Unicode를 UTF-8로 변환하기.  (0) 2011.01.05
비트(bit) 연산  (0) 2011.01.03
Posted by Mister_Q