var str="1<script>alert(1)</"+"script>"
+"2<script>alert(2)</"+"script>"
+"3<script>alert(3)</"+"script>"
+"4<script>alert(4)</"+"script>"
var reg=/<script[^>]*>([\s\S](?!<script))*?<\/script>/igm=str.match(reg)alert(m)
+"2<script>alert(2)</"+"script>"
+"3<script>alert(3)</"+"script>"
+"4<script>alert(4)</"+"script>"
var reg=/<script[^>]*>([\s\S](?!<script))*?<\/script>/igm=str.match(reg)alert(m)
不明白 !的意思和 *? 的意思
你原来的匹配是贪婪的,所以含多个script标签时会一次匹配完所有的script