Php 仅提取带有preg_match_all的开始和结束脚本标记

Php 仅提取带有preg_match_all的开始和结束脚本标记,php,html,regex,Php,Html,Regex,Html: 。代码。。 …代码。。 …代码。。 …代码。。 我想看到的是: <script type="text/javascript"> ..code.. </script> <script type="text/javascript"> ..code.. </script> <script> ..code.. </script> <script type="text/javascript"> ..code.

Html:

。代码。。
…代码。。
…代码。。
…代码。。
我想看到的是:

<script type="text/javascript"> ..code.. </script>
<script type="text/javascript"> ..code.. </script>
<script> ..code.. </script>
<script type="text/javascript"> ..code.. </script>

我的表情是:

<script type="text/javascript"></script>
<script type="text/javascript"></script>
<script></script>
<script type="text/javascript"></script>
preg_match_all('/()/i',$html,$result);
我无法让它工作。

来自:

函数stripscript($code){
$code=preg_replace('/您可以使用:

function stripscript($code) {
  $code = preg_replace('/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/i', '<script type="text/javascript"></script>', $code);
  return $code;
}

$html=preg\u replace('~]*>\K[^\K[^好的,我已经理解了您要做的事情。如果我理解得很好,您希望删除脚本之间的所有标记。(为什么不也删除脚本标记?)preg_replace可以工作,尽管它不会删除注释:
文件中存在的任何html注释仍然会出现,是否可以不显示它。@user3076489:我认为您必须编辑您的问题并发布更清楚的内容。
function stripscript($code) {
  $code = preg_replace('/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/i', '<script type="text/javascript"></script>', $code);
  return $code;
}
$html = preg_replace('~<script[^>]*>\K[^<]*(?=</script>)~i', '', $html);
$html = preg_replace('~<script[^>]*+>\K[^<]*+(?=</script>)~i', '', $html);