我想获取脚本代码,除了外部引用脚本。 例如:我想获取代码:
<script type="text/javascript">alert("test");</script>
从下一个开始:
var s ='<script type="text/javascript" src="image/plupload/plupload.js"></script><script type="text/javascript" src="image/plupload/plupload.flash.js"></script><script type="text/javascript" src="image/plupload/plupload.html4.js"></script><script type="text/javascript" src="image/plupload/plupload.html5.js"></script><script type="text/javascript">alert("test");</script>'
p = /<(script)\s+((language=['"]?javascript['"]?)|(type=['"]?text\/javascript['"]?))?\s*\/?>.*(?:<\/\1>)?/gi;
var arr = new Array();
while(arr = p.exec(s))
alert(arr[1]+','+arr[1]+','+arr[2]);
但是正则表达式是错误的,我无法得到正确的结果
最佳答案
Never parse HTML with regex. The <center>
cannot hold.
要么给你的脚本一个独特的 id
并使用document.getElementById(MyId).textContent
,或者只是使用 document.getElementsByTagName('script')[i].textContent
for 循环它们.
关于javascript - 如何从页面源代码中使用正则表达式获取<script>代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9660600/