使用C#从html中获取标记?

使用C#从html中获取标记?,c#,html,tags,C#,Html,Tags,我有这个html标签: <img src="/Student/ExaminationImage?name=figuur" /> 我只想在这里把它去掉:/Student/examicationimage?name=figuur 第二个字符串是:figuur 我该怎么做 我什么都试过了,但没有一件效果好 Grtz是解析HTML的好工具。是解析HTML的好工具。如果linq始终是格式良好的xml,则始终可以使用它 string imageTag = "<img src=\"\/

我有这个html标签:

<img src="/Student/ExaminationImage?name=figuur" />

我只想在这里把它去掉:/Student/examicationimage?name=figuur 第二个字符串是:figuur

我该怎么做

我什么都试过了,但没有一件效果好


Grtz是解析HTML的好工具。

是解析HTML的好工具。

如果linq始终是格式良好的xml,则始终可以使用它

string imageTag = "<img src=\"\/Student\/ExaminationImage?name=figuur\" />"

string src = XElement.Parse(imageTag ).Attribute("src").Value;
string imageTag=“”
字符串src=XElement.Parse(imageTag).Attribute(“src”).Value;

如果linq始终是格式良好的xml,则可以始终使用它

string imageTag = "<img src=\"\/Student\/ExaminationImage?name=figuur\" />"

string src = XElement.Parse(imageTag ).Attribute("src").Value;
string imageTag=“”
字符串src=XElement.Parse(imageTag).Attribute(“src”).Value;

要扩展@Albin的答案:

这是一种非常健壮、可靠的方法来处理这一问题,而且确实是一条前进的道路

但是,如果且仅当您可以保证您的标记a)已经在字符串中隔离,b)始终使用与您描述的格式相同的格式,您可以使用:

    static void Main(string[] args)
    {
        var tag = @"<img src=""/Student/ExaminationImage?name=figuur"" />";

        Console.WriteLine("Tag: {0}", tag);

        var tagParts = tag.Split(new[] {'"'},StringSplitOptions.RemoveEmptyEntries);

        var src = tagParts[1];

        Console.WriteLine("Src: {0}", src);

        var srcParts = src.Split('?');

        Console.WriteLine("Parameters: {0}", srcParts[1]);

        Console.ReadLine();
    }
static void Main(字符串[]args)
{
var标记=@“”;
WriteLine(“标记:{0}”,标记);
var tagParts=tag.Split(新[]{'''},StringSplitOptions.RemoveEmptyEntries);
var src=tagParts[1];
WriteLine(“Src:{0}”,Src);
var srcParts=src.Split(“?”);
WriteLine(“参数:{0}”,srcParts[1]);
Console.ReadLine();
}

要扩展@Albin的答案:

这是一种非常健壮、可靠的方法来处理这一问题,而且确实是一条前进的道路

但是,如果且仅当您可以保证您的标记a)已经在字符串中隔离,b)始终使用与您描述的格式相同的格式,您可以使用:

    static void Main(string[] args)
    {
        var tag = @"<img src=""/Student/ExaminationImage?name=figuur"" />";

        Console.WriteLine("Tag: {0}", tag);

        var tagParts = tag.Split(new[] {'"'},StringSplitOptions.RemoveEmptyEntries);

        var src = tagParts[1];

        Console.WriteLine("Src: {0}", src);

        var srcParts = src.Split('?');

        Console.WriteLine("Parameters: {0}", srcParts[1]);

        Console.ReadLine();
    }
static void Main(字符串[]args)
{
var标记=@“”;
WriteLine(“标记:{0}”,标记);
var tagParts=tag.Split(新[]{'''},StringSplitOptions.RemoveEmptyEntries);
var src=tagParts[1];
WriteLine(“Src:{0}”,Src);
var srcParts=src.Split(“?”);
WriteLine(“参数:{0}”,srcParts[1]);
Console.ReadLine();
}

以防万一你倾向于使用正则表达式,不要这样做。请参见=)以防您倾向于正则表达式,请不要。是的,我明白了,这可能很好。但我有一根绳子。而不是一份文件。。所以我有一个包含所有html代码的字符串…是的,我明白了,这可能很好。但我有一根绳子。而不是一份文件。。所以我有一个字符串,里面有所有的html代码。。。