Creo que de esta forma es que funcionaría
Código PHP:
Ver original<?php
$s = '<html>
<head>
<title>XHTML</title>
</head>
<body>
<div id="container">
<div id="c1"></div>
<div id="c2"></div>
<div id="c3"></div>
<div id="c4"></div>
<p class="neat">Lorem ipsum dolor sit amet... </p>
</div>
</body>
</html>';
$pattern = '/\<([a-z0-9\-]+)([^\>]*)\>((.*)\<\/\1\>)?/';