C# 如何使用正则表达式获取父XML标记中所有XML标记的值?

C# 如何使用正则表达式获取父XML标记中所有XML标记的值?,c#,xml,regex,C#,Xml,Regex,使用真正的xml解析器而不是正则表达式。例如,使用 再次考虑使用任何其他方法来分析XML,但检查是否可以帮助您: var speeds = XDocument.Load(fname) .XPathSelectElements("//Capacity/Speed") .Select(x => (string)x) .ToList(); string reg=@'+ @“(?'值'.*?)”+ @""; strin

使用真正的xml解析器而不是正则表达式。例如,使用


再次考虑使用任何其他方法来分析XML,但检查是否可以帮助您:

var speeds = XDocument.Load(fname)
             .XPathSelectElements("//Capacity/Speed")
             .Select(x => (string)x)
             .ToList();
string reg=@'+
@“(?'值'.*?)”+
@"";
string xml=“这是内部文本”;
Match mMatch=Regex.Match(xml,reg);
然后您可以使用属性“Groups”来获取数据


来源:10秒的google

尝试解析XML。如果这是学校作业,你应该这么说。不使用适当的XML实用程序类是一个不寻常的要求。是的,我知道这是最简单的方法,但我无能为力,因为我被严格要求只使用正则表达式。我被强烈警告只能通过使用正则表达式来完成这项任务。请帮帮我out@user2786794向他们展示这个链接谁指示使用常规表达我知道很明显会感到沮丧,但这与我的工作有关,所以我不能争辩我必须按照指示去做。希望我能得到答案,否则他们会改变主意。它会产生一个错误,说“无法识别的分组结构”。我使用while(mMatch.Success){string matchfound+=mmavalue;mMatch=mMatch.NextMatch();}。我需要替换哪些内容?我将其替换为以下字符串reg=@“+@”(?]*?>(?*?)。*?)+@;mMatch.Groups[“value”]应该返回“this is the internal text”,但是如果字符串是这样,它会返回任何值吗:1st test2nd test然后这个正则表达式会工作吗?mMatch.Groups[value]会返回“1st test2nd test”吗?
Can anyone please tell an accurate regex to fetch such data and I m strictly instructed to use regex to get these data I am not suppose to use XMLDocument so please kindly suggest me a regex i badly need it.
var speeds = XDocument.Load(fname)
             .XPathSelectElements("//Capacity/Speed")
             .Select(x => (string)x)
             .ToList();
string reg = @"<(?'tag'\w+?).*>" + 
             @"(?'value'.*?)"    +  
             @"</\k'tag'>";
string xml = "<test>this is the inner text</test>"; 
Match mMatch = Regex.Match (xml, reg);