Drupal Google跟踪代码管理器会破坏HTML

GTM module author inserts GTM code by using regex and dynamically change page source. As a result of wrong regex, in my specific case it breaks HTML. Can't understand why didn't he use any hooks for that.

<!--[if lt IE 7 ]> <body id="homepage" class="ie ie6 html front not-logged-in one-sidebar sidebar-second page-node page-node- page-node-603 node-type-panel tao">
<!-- Google Tag Manager -->
...............
<!-- End Google Tag Manager --> <![endif]-->
<!--[if IE 7 ]>    <body id="homepage" class="ie ie7 html front not-logged-in one-sidebar sidebar-second page-node page-node- page-node-603 node-type-panel tao"> <![endif]-->
<!--[if IE 8 ]>    <body id="homepage" class="ie ie8 html front not-logged-in one-sidebar sidebar-second page-node page-node- page-node-603 node-type-panel tao"> <![endif]-->
<!--[if IE 9 ]>    <body id="homepage" class="ie ie9 html front not-logged-in one-sidebar sidebar-second page-node page-node- page-node-603 node-type-panel tao"> <![endif]-->
<!--[if !IE]><!--> <body id="homepage" class="html front not-logged-in one-sidebar sidebar-second page-node page-node- page-node-603 node-type-panel tao"> <!--<![endif]-->

Plugin code (they just replace HTML using regex)

$children = preg_replace('@<body[^>]*>@', '$0' . $script, $children, 1);

How to fix that regex? Thanks in advance.