RegEx.Match 问题 C# 从网站提取数据
本文关键字:网站 提取 数据 Match 问题 RegEx | 更新日期: 2023-09-27 18:33:44
我正在学习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/">
但是怎么做呢?
谢谢!
这个
怎么样
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();
}
}
}