我如何在C#中正确使用此正则表达式?

时间:2013-05-23 01:04:30

标签: c# html regex

我正在尝试使用正则表达式从某些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;
    }

0 个答案:

没有答案