parsersax.h
来自「著名的标准C++的html解析器」· C头文件 代码 · 共 66 行
H
66 行
#ifndef __HTML_PARSER_SAX_H__#define __HTML_PARSER_SAX_H__#include <string>#include "Node.h"namespace htmlcxx{ namespace HTML { class ParserSax { public: ParserSax() : mpLiteral(0), mCdata(false) {} virtual ~ParserSax() {} /** Parse the html code */ void parse(const std::string &html); template <typename _Iterator> void parse(_Iterator begin, _Iterator end); protected: // Redefine this if you want to do some initialization before // the parsing virtual void beginParsing() {} virtual void foundTag(Node node, bool isEnd) {} virtual void foundText(Node node) {} virtual void foundComment(Node node) {} virtual void endParsing() {} template <typename _Iterator> void parse(_Iterator &begin, _Iterator &end, std::forward_iterator_tag); template <typename _Iterator> void parseHtmlTag(_Iterator b, _Iterator c); template <typename _Iterator> void parseContent(_Iterator b, _Iterator c); template <typename _Iterator> void parseComment(_Iterator b, _Iterator c); template <typename _Iterator> _Iterator skipHtmlTag(_Iterator ptr, _Iterator end); template <typename _Iterator> _Iterator skipHtmlComment(_Iterator ptr, _Iterator end); unsigned long mCurrentOffset; const char *mpLiteral; bool mCdata; }; }//namespace HTML}//namespace htmlcxx#include "ParserSax.tcc"#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?