質問させてください。

"The <B>brown fox</B> jumps over the <S>laszy</S> dog".gsub(/<.*>/,"<TAG>")

を実行して、期待した動作は

=> "The <TAG>brown fox<TAG> jumps over the <TAG>laszy<TAG> dog"

なのですが、実際は

=> "The <TAG> dog"

のようになってしまいます。

仕様がないので、文字列を each_byte でひとつひとつ調べて "<"と">"が来るたびにフラグを立てて処理しています。
スマートな記述方法はないでしょうか?