C# Regex从xml元素获取内部内容

C# Regex从xml元素获取内部内容,c#,regex,C#,Regex,我需要从这段xml中获取值状态。: string xml = "<value z:Id=\"8\" z:Type=\"System.String\" z:Assembly=\"0\">Status.</value>"; Regex regexFieldValue = new Regex("z:Assembly=\"0\">(?<fieldValue>[^<|\\.|.]+)</value>"); Match match = rege

我需要从这段xml中获取值状态。

string xml = "<value z:Id=\"8\" z:Type=\"System.String\" z:Assembly=\"0\">Status.</value>";

Regex regexFieldValue = new Regex("z:Assembly=\"0\">(?<fieldValue>[^<|\\.|.]+)</value>");

Match match = regexFieldValue.Match(xml);
if (match.Success)
{
    Group group = match.Groups["fieldValue"];
    return group.Value;
}
string xml=“状态。”;
Regex regexFieldValue=new Regex(“z:Assembly=\'0\”>(?[^
[^
z:Assembly=\\'0\\”>(?(?:(!))*))
试试这个。看演示


您的正则表达式应该是
“z:Assembly=\“0\”>(?[^]+)”
通常的建议是“使用解析器”,因为XML不是一种常规语言。是的,但是XML解析器非常枯燥且易于使用。编写一些无法理解的正则表达式要酷得多。
z:Assembly=\"0\">(?<fieldValue>[^<>]+)</value>
z:Assembly=\\"0\\">(?<fieldValue>(?:(?!<\/value>).)*)<\/value>