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 + -
显示快捷键?