I want to remove all the html tags except <br> or <br/> tags from a string using javascript.
I have seen many questions like this but their answers will remove all the html tags including <br> and <br/> tags.  
Does anyone knows a regex to do this?
Use a negative lookahead (by using a regex such as /<(?!br\s*\/?)[^>]+>/g):
var html = 'this is my <b>string</b> and it\'s pretty cool<br />isn\'t it?<br>Yep, it is. <strong>More HTML tags</strong>';
html = html.replace(/<(?!br\s*\/?)[^>]+>/g, '');
console.log(html); 
// this is my string and it's pretty cool<br />isn't it?<br>Yep, it is. More HTML tags
Demo
Try This
 function remove_tags(html)
 {
   var html = html.replace("<br>","||br||");  
   var tmp = document.createElement("DIV");
   tmp.innerHTML = html;
   html = tmp.textContent||tmp.innerText;
   return html.replace("||br||","<br>");  
 }
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With