正则表达式替换div

时间:2018-07-26 06:51:03

标签: c# html regex replace html-lists

我需要使用C#方式的正则表达式来替换以下标记:

<div class="tr-summaryinfo">' <p class="tr-summaryitem">test </> </div>

应该看起来像

<ul class="tr-summaryinfo">' <li class="tr-summaryitem">test </li> </ul>

谢谢

1 个答案:

答案 0 :(得分:0)

此解决方案使用2个Replace调用,如果代码执行得不太频繁,则可能会确定:

string input =
@"<div class=""tr-summaryinfo"">'
<p class=""tr-summaryitem"">test </>
</div>";

string result = Regex.Replace(input, 
     "<div class=\"tr-summaryinfo\">(.*?)</div>", 
     "<ul class=\"tr-summaryinfo\">$1</ul>",
    RegexOptions.Singleline);

result = Regex.Replace(result, 
     "<p class=\"tr-summaryitem\">(.*?)</p>", 
     "<li class=\"tr-summaryitem\">$1</li>",
    RegexOptions.Singleline);

请注意您需要吗?避免贪婪行为的模式

Fiddle