Пример #1
0
std::string CQueryUtil::nodeText(GumboNode *apNode)
{
    std::string text;

    writeNodeText(apNode, text);
    return text;
}
Пример #2
0
void CQueryUtil::writeNodeText(GumboNode* apNode, std::string& aText)
{
	switch (apNode->type)
	{
		case GUMBO_NODE_TEXT:
			aText.append(apNode->v.text.text);
			break;
		case GUMBO_NODE_ELEMENT:
		{
			GumboVector children = apNode->v.element.children;
			for (unsigned int i = 0; i < children.length; i++)
			{
				GumboNode* child = (GumboNode*) children.data[i];
				writeNodeText(child, aText);
			}
			break;
		}
		default:
			break;
	}
}