
使用正则表达式全面匹配 script 标签内部内容
为了从包含 script 标签的 HTML 文档中准确提取内部内容,可以使用以下精细的正则表达式:
/(<script\b([^"<>]+|"[^"]*")*>)([\s\S]*?)(<\/script>)/g
分析:
- (<script id="fnref-1"><a href="https://www.php.cn/link/d58f36f7679f85784d8b010ff248f898" rel="nofollow" target="_blank" >1*>):</script>匹配 script 标签开始符 <script>,之后允许包含属性(使用 [^>]* 匹配非 > 字符)。</script>
- (2*?):匹配 script 标签内部内容。[\s\S]*? 匹配所有字符(包括换行符),*? 使用非贪婪模式以匹配最短的匹配。
- ():匹配 script 标签结束符 。
示例:
立即学习“前端免费学习笔记(深入)”;
使用给定的 HTML 文档作为示例:
<script src="static/js/jsencrypt.js?v=WEB_VERSION"></script>
<script src="static/js/jquery.form.js?v=WEB_VERSION"></script>
<script type="text/javascript">
var a = 1;
var b = 2;
</script>使用正则表达式 /(<script\b([^"<>]+|"[^"]*")*>)([\s\S]*?)(<\/script>)/g 将匹配:
<script type="text/javascript">
var a = 1;
var b = 2;
</script>











