C# 正则表达式可以删除很多文本

C# 正则表达式可以删除很多文本,c#,regex,C#,Regex,在我们的CMS中,我们使用了一些标签,这些标签在为其他系统导出时应该被替换 更换代码如下所述: var rxStr = "<div[^<]+class=([\"'])related-document-content\\1.*</div>"; var rx = new System.Text.RegularExpressions.Regex(rxStr, System.Text.RegularExpressions.RegexOptions.Ig

在我们的CMS中,我们使用了一些标签,这些标签在为其他系统导出时应该被替换

更换代码如下所述:

 var rxStr = "<div[^<]+class=([\"'])related-document-content\\1.*</div>";
 var rx = new System.Text.RegularExpressions.Regex(rxStr,
            System.Text.RegularExpressions.RegexOptions.IgnoreCase);
 bodyText = rx.Replace(bodyText, "");
var rxStr=“除了明显的“改用HTML解析器/写入”之外:


您的正则表达式匹配的是
您应该为此使用html解析器…jHotry使其成为非贪婪的
*?
而不是
*
永远不要在html或XML上使用正则表达式。它们不规则,使用本机库更好。
<p>First paragraph</p>
<div class='related-document-content' id='457'>First related text</div>
<p>Second paragraph</p>
<div class='related-document-content' id='458'>Second related text</div>
<p>Third paragraph</p>
<p>First paragraph</p>
<p>Third paragraph</p>
// Added [^>]+> towards the end.
// Also adding () within the div so you can debug better which matches were found.
var rxStr = "<div[^>]+class=([\"'])related-document-content\\1[^>]*>(.*)</div>";
var rxStr = "<div[^>]+class=([\"'])related-document-content\\1[^>]*>([^<]*)</div>";