using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(?i)^(?!((<\/|<)(h[1-6]|ul|li|script|blockquote)(\s.+)*>))(.+)(?!(<(\/\3)>))$";
string substitution = @"<p>$5</p>";
string input = @"<h2>Lorem ipsum dolor sit amet, consectetur adipiscing elit</h2>
Vivamus vel tempor turpis, <strong>non rutrum quam</strong>. Suspendisse ac rhoncus felis, eget porta lectus.
Nam vulputate sapien risus, vel vehicula mi volutpat sed.
<ul>
<li>Sed feugiat nibh at nisl eleifend scelerisque.</li>
<li>Aliquam non maximus ipsum. Aliquam erat volutpat.</li>
</ul>
<h3>Praesent eget diam sit amet leo vehicula sagittis at quis tortor</h3>
Nunc nec sem ac nunc tincidunt aliquam ut nec dolor. Nulla facilisi.
<img alt=""xxxx"" src=""xxx.png"" class=""xxxxx""/>
<caption><i>ccccc</i></caption>
<img alt=""xxxx"" src=""xxx.png"" class=""xxxxx""/>
<i>ccccc</i>
<strong>Nunc nec sem ac nunc tincidunt aliquam ut nec dolor. Nulla facilisi.</strong>
Vivamus vel tempor turpis, <strong>non rutrum quam</strong>. Suspendisse ac rhoncus felis, eget porta lectus.
Nunc nec
Nunc nec
Nunc nec
<blockquote class=""twitter-tweet"" data-lang=""en""><p lang=""en"" dir=""ltr"">Vivamus vel tempor turpis <a href=""></a></p>— xxxxx (@xxxxxx) <a href=""https://twitter.com/xxxx/status/x?ref_src=x"">February 15, 2019</a></blockquote>
<script async src="" charset=""utf-8""></script>";
RegexOptions options = RegexOptions.Multiline;
Regex regex = new Regex(pattern, options);
string result = regex.Replace(input, substitution);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx