我正在尝试使用正则表达式从某些HTML中获取URL,但它无效。
<h3 class="(.*?)"><a onmousedown="(.*?)" href="(.*?)">(.*?)</a></h3>
有人可以帮我解释一下吗,我不是最好用Regex,我想看看我哪里出错了..
编辑:
我不是从任何地方“抓取”代码。我已经了解了很长一段时间的正则表达式,但我从来没有做过多少工作,我认为它可以为这个项目派上用场,所以我试了一下。这是我的代码:
static void Main(string[] args)
{
WebClient wc = new WebClient();
String html = wc.DownloadString("http://www.example.com/");
foreach (String result in match("<h3 class=\"(.*)\"><a onmousedown=\"(.*)\" href=\"(.*)\">(.*)</a></h3>", html))
{
Console.WriteLine("result: " + result);
}
Console.ReadKey();
}
public static ArrayList match(string regex, string html, int x = 0)
{
ArrayList l = new ArrayList();
foreach (Match m in new Regex(regex, RegexOptions.Multiline).Matches(html))
{
l.Add(m.Groups[x].Value);
}
return l;
}