C# 从文本文件开始到结束的正则表达式

C# 从文本文件开始到结束的正则表达式,c#,regex,xml,C#,Regex,Xml,您好,我想从大型文本文件中只读包含到的文本。 您可以说它需要文本以开头,以结尾。表示从文档中分离XML部分。你能帮我提供C语言的正则表达式吗# 目前我正在使用以下代码: if (text.Contains("<?xml")) { foreach (Match match in Regex.Matches(text, @"(?s)<?xml(.*?)</Document>")) Console.WriteLine(match.Groups[1].Value)

您好,我想从大型文本文件中只读包含
的文本。 您可以说它需要文本
开头,以
结尾。表示从文档中分离XML部分。你能帮我提供C语言的正则表达式吗#

目前我正在使用以下代码:

if (text.Contains("<?xml"))
{
    foreach (Match match in Regex.Matches(text, @"(?s)<?xml(.*?)</Document>"))
    Console.WriteLine(match.Groups[1].Value);
    Console.ReadKey();
}

if(text.Contains(“正则表达式中的某些字符未转义,您可以使用匹配组0包含整个匹配字符串。我已更新了下面的示例:

foreach (Match match in Regex.Matches(text, @"(?s)\<\?xml(.*)</Document>"))
{
   Console.WriteLine(match.Groups[0].Value);
}

foreach(Regex中的Match Match.Matches(text,@“(?s)\正则表达式中的某些字符不会转义,您可以使用匹配组0包含整个匹配字符串。我已更新了下面的示例:

foreach (Match match in Regex.Matches(text, @"(?s)\<\?xml(.*)</Document>"))
{
   Console.WriteLine(match.Groups[0].Value);
}

foreach(Regex.Matches中的Match-Match.Matches(text,@“(?s)\n一个显而易见的问题是:为什么不使用XML解析器呢?不需要使用Regex,可以使用text.IndexOf或Regex标记中的XML解析器:“注意:请求HTML、JSON等正则表达式往往会遇到负面反应。如果有针对它的解析器,请使用它。”。“很抱歉,我不能使用“XML解析器”,因为我正在从电子邮件中提取此XML部分。其中包含正文、抄送、主题和许多其他垃圾。我只需要电子邮件正文中的XML部分。明显的问题是:为什么不改为使用XML解析器?您不需要使用正则表达式,请使用text.IndexOf或正则表达式标记中的XML解析器:“注意:要求HTML、JSON等。正则表达式往往会遇到负面反应。如果有解析器,请使用它。”抱歉,我不能使用“XML解析器”,因为我从电子邮件中提取的XML部分。其中包含正文、抄送、主题和许多其他垃圾。我只需要电子邮件正文中的XML部分。