using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(<blockquote[^>]*>
[\S\s]*?
)<(b|h[2-5])\b[^>]*>([\S\s]*?)</\2>";
string substitution = @"\1<h6>\3</h6>";
string input = @"<blockquote>
<div>Stuff
<span>
<b>Things</b>
<h2>Stuff</h2>
<h3>Other</h3>
<h4>Grassy</h4>
<p>Not this</p>
<h5>More replace</h5>
</span>
</div>
</blockquote>
<b>Outside of the blockquote</b>
<h1>Should not be affected</h1>
<h2>Should not be affected either</h2>
";
RegexOptions options = RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace;
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