удаление html тегов
От: Socket Ниоткуда http://www.samborsky.com
Дата: 24.08.07 14:38
Оценка:
Прокоментируйте плиз функцию.
Возможно я чтото не учел, или можно сделать быстрее и проще


string strip_tags(const string& s){

    string tmp(s);
    string::size_type idx = 0,idx2 = 0;

    // Ищем символ <
    while( string::npos != (idx = tmp.find("<",idx2)) ){

        // Ищем конец тега
        idx2 = tmp.find("/>",idx);
        if( string::npos == idx2 ) break;

        // Удаляем все м-ду < и >
        tmp.erase( idx,idx2-idx+2 );        
    }

    return tmp;

}

// Вызов
int _tmain(int argc, _TCHAR* argv[]){

    printf( strip_tags("Hello C++<<dedf/>").c_str() );

    return 0;
}
http://www.samborsky.com — мой блог
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.