Supprimez les groupes de contenu HTML du début à la fin de la chaîne dans JavaScript

J'ai besoin d'un regex qui pourrait supprimer la balise complète du début à la fin.
Par exemple:
Pour la chaîne donnée:

var str = "Hello <script> console.log('script tag') </script> World"; 

J'ai besoin d'une sortie:

 "Hello World" // with full script tag including inner content removed 

Je suis très précis uniquement pour la solution RegEx , donc je n'ai pas besoin de trucs d'ajout de navigateur.
Veuillez aviser si cela n'est pas possible du tout.

J'ai essayé ceci et ses variations:

 inputString.replace( /<\/?[^>]+(>|$)/g, "" ); 

Mais cela n'atteint pas ce que je veux et supprime uniquement les éléments d'étiquette, en laissant le contenu interne. Quels groupes RegEx dois-je créer dans l'expression?

Je n'ai pas besoin de traiter des choses comme type="text/javascript" , car elles sont déjà filtrées avant de recevoir la chaîne. Non jQuery plz. (J'ai besoin de stocker RegEx comme une propriété de mon objet de filtre).

Aide appréciée.

C'est une solution regex pure:

 var str = "Hello <script> console.log('script tag') </script> World"; var repl = str.replace(/<([^.]+)>.*?<\/\1>/ig, ''); //=> "Hello World" 

En supposant qu'il n'y a pas < OR > entre les étiquettes d'ouverture et de fermeture.