我正在学习C#,我正在尝试从网站中提取数据。
到目前为止,我已经设法获得了我需要的数据。但由于它是我试图提取的超链接,我遇到了问题。
我正在尝试提取一个人的名字,并在源代码中将其写为
<td class="name"><a href="/fodbold/biografi/patrick-kristensen/">Patrick Kristensen</a>
我用它来提取
MatchCollection NameOfPlayer = Regex.Matches(html, "<td class=\"name\"><a href=\"/fodbold/biografi/patrick-kristensen/\">\\s*(.+?)\\s*</a>", RegexOptions.Singleline);
提取我需要忽略的每个人
<a href="/fodbold/biografi/patrick-kristensen/">
但是如何?
谢谢!
答案 0 :(得分:0)
这个怎么样
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string input =
"<td class=\"name\"><a href=\"a\">s</a>" +
"<td class=\"name\"><a href=\"b\">t</a>" +
"<td class=\"name\"><a href=\"c\">u</a>" +
"<td class=\"name\"><a href=\"d\">v</a>" +
"<td class=\"name\"><a href=\"e\">w</a>" +
"<td class=\"name\"><a href=\"f\">x</a>" +
"<td class=\"name\"><a href=\"g\">y</a>" +
"<td class=\"name\"><a href=\"h\">z</a>";
string pattern = @"href=[^>]*>(?'name'[^<]*)";
MatchCollection matches = Regex.Matches(input, pattern);
foreach (Match match in matches)
{
string name = match.Groups["name"].Value;
Console.WriteLine(name);
}
Console.ReadLine();
}
}
}