如何通过正则表达式捕获到 script 标签中间的内容,例如 php 文件中的第三个 script 标签内容:
var a = 1; var b = 2;
可以使用以下正则表达式:
/(<scriptb([^"<>]+|"[^"]*")*>)([ss]*?)(</script>)/g
这个正则表达式由以下部分组成:
捕获组 1:开始标签
(<scriptb([^"<>]+|"[^"]*")*>)
匹配 script 标签的开始标签。
非捕获组:属性
([^"<>]+|"[^"]*")*
匹配属性,允许引号内的内容。
捕获组 2:中间内容
([ss]*?)
匹配中间内容,尽可能少匹配。
捕获组 3:结束标签
(</script>)
匹配 script 标签的结束标签。