Здравствуйте!
Пробую разобраться с boost. И есть несколько вопросов.
Требуется определить на ряде сайтов, есть ли соответствующие разделы:
Руководство. Педагогический (научно-педагогический) состав
Материально-техническое обеспечение и оснащенность образовательного процесса
Пока смог определить, если такой текст на странице. Как определить ссылку, и выйти по ней?
И, непонятная проблема. Если на одном из сайтов текст найден, то он находится и на всех остальных, хотя там его нет.
for (int i = 0; i Items->Count; i++) {
Application->ProcessMessages();
TIdHTTP *httpBrowse = new TIdHTTP(NULL);
TMemo *httpMemo = new TMemo(Owner);
httpMemo->Parent = ScrollBox1;
httpMemo->Align = alClient;
httpMemo->Visible = true;
httpMemo->Lines->Add(httpBrowse->Get(ListBox1->Items->Strings[0]));
for (int j = 0; j Items->Count; j++) {
/*std::wstring wstdLine(HtmlMemoText.t_str());
std::string stdLine(wstdLine.begin(), wstdLine.end());*/
Application->ProcessMessages();
String HtmlMemoText = httpMemo->Text;
std::string stdLine(AnsiString(HtmlMemoText).c_str());
std::string ExpressionText(AnsiString(ListBox2->Items->Strings[j]).c_str());
//boost::regex xRegEx (AnsiString(ListBox2->Items->Strings[j]).c_str());
boost::regex xRegEx (ExpressionText);
boost::smatch xResults;
std::string::const_iterator xItStart = stdLine.begin();
std::string::const_iterator xItEnd = stdLine.end();
if ((boost::regex_search(xItStart, xItEnd, xResults, xRegEx)) && (sizeof(xResults) > 1)) {
StringGrid1->Cells[j+1][i+1] = "Определен";
}
else StringGrid1->Cells[j+1][i+1] = "Не определен";
stdLine.clear();
ExpressionText.clear();
}
delete httpMemo;
httpBrowse->Disconnect();
delete httpBrowse;
}
Использую XE7