$re = '/<\s*script\s*([^>]*)>(.*?)<\s*\/script\s*>/s';
$str = '<script type="text/javascript" src="/openapi.js">
VK.init({apiId: 3251711, onlyWidgets: true});
var a = 5;
var b = 6;
</script>
<script type="text/javascript">
VK.init({apiId: 3251711, onlyWidgets: true});
var a = 5;
var b = 6;
for(a = 0; a<10;a++;
</script>
<script>
VK.init({apiId: 3251711, onlyWidgets: true});
var a = 5;
var b = 6;
for(a = 0; a<10;a++;
</script>
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php