import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?i)^(?!((<\\/|<)(h[1-6]|ul|li|script|blockquote)(\\s.+)*>))(.+)(?!(<(\\/\\3)>))$";
final String string = "<h2>Lorem ipsum dolor sit amet, consectetur adipiscing elit</h2>\n\n"
+ "Vivamus vel tempor turpis, <strong>non rutrum quam</strong>. Suspendisse ac rhoncus felis, eget porta lectus. \n\n"
+ "Nam vulputate sapien risus, vel vehicula mi volutpat sed. \n\n"
+ "<ul>\n"
+ "<li>Sed feugiat nibh at nisl eleifend scelerisque.</li>\n"
+ "<li>Aliquam non maximus ipsum. Aliquam erat volutpat.</li>\n"
+ "</ul>\n\n"
+ "<h3>Praesent eget diam sit amet leo vehicula sagittis at quis tortor</h3>\n\n"
+ "Nunc nec sem ac nunc tincidunt aliquam ut nec dolor. Nulla facilisi.\n\n"
+ "<img alt=\"xxxx\" src=\"xxx.png\" class=\"xxxxx\"/> \n\n"
+ "<caption><i>ccccc</i></caption> \n\n"
+ "<img alt=\"xxxx\" src=\"xxx.png\" class=\"xxxxx\"/> \n\n"
+ "<i>ccccc</i>\n\n"
+ "<strong>Nunc nec sem ac nunc tincidunt aliquam ut nec dolor. Nulla facilisi.</strong>\n\n"
+ "Vivamus vel tempor turpis, <strong>non rutrum quam</strong>. Suspendisse ac rhoncus felis, eget porta lectus.\n\n"
+ "Nunc nec\n"
+ "Nunc nec\n"
+ "Nunc nec\n\n"
+ "<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>\n\n"
+ "<script async src=\"\" charset=\"utf-8\"></script>";
final String subst = "<p>$5</p>";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
}
}
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 Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html