如何使用正则表达式提取 PHP 文件中多个 script 标签的中间内容?

如何使用正则表达式提取 php 文件中多个 script 标签的中间内容?

使用正则匹配完整 script 标签中间内容

php 文件中包含了多个 script 标签,需要通过正则表达式捕获其中一个 script 标签的中间内容,例如:

var a = 1;
var b = 2;

针对原有的正则表达式存在缺陷,无法处理 script 标签属性插入 > 的情况,因此需要改进正则表达式。

改进后的正则表达式如下:

/(<script([^"<>]+|"[^"]*")*>)([sS]*?)(</script>)/g

具体解析如下:

  • (