Ik ben een tijdje bezig met een Regular Expression die URL's uit een stuk HTML text moet filteren. Ik gebruik hiervoor de Ultimate++ library waar ook een regexp in zit. Deze is gebaseerd op PCRE. Echter zijn er een aantal regexp's waar ik niet uit kom. Ze werken niet en ik kan maar niet vinden waarom. De documentatie van PCRE heeft me niet verder kunnen helpen. De code is als volgt.
Kan iemand me met dit probleem helpen?
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| Vector<ImdbLink> ImdbManager::ParseResultPage(String pText) { RegExp mRexp("(<p><b>.*?)\n"); // werkt wel! String mSection; Vector<ImdbLink> mLinks; if (mRexp.Match(pText)) { mSection = mRexp[0]; } if (mSection.Find("<b>Popular Titles</b>") != -1) { String mLine = mRexp[0]; mRexp.SetPattern("(<a href=.*?)</td></tr>"); // werkt niet! if (mRexp.Match(mLine)) { for (int i = 0; i < mRexp.GetCount(); i++) { CleanText(mLine); mRexp.SetPattern("<a href=""(.{17})"); // werkt niet omdat de bovenste ook niet werkt! if (mRexp.Match(mLine)) { mLinks.Add(mRexp[0]); } } } } return mLinks; } |
Kan iemand me met dit probleem helpen?