var tagScript='(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)';

String.prototype.evalScript=function(){
	return (this.match(new RegExp(tagScript,'img')) || []).evalScript();
};

String.prototype.stripScript=function(){
	return this.replace(new RegExp(tagScript,'img'),'');
};

String.prototype.extractScript=function(){
	var matchAll=new RegExp(tagScript,'img');
	return (this.match(matchAll) || []);
};

Array.prototype.evalScript=function(extracted){
	var s=this.map(function(sr){
		var sc=(sr.match(new RegExp(tagScript,'im')) || ['',''])[1];
		if(window.execScript){ window.execScript(sc); }
		else{ window.setTimeout(sc,0); }
	});
    return true;
};
Array.prototype.map = function(fun){
	if(typeof fun!=="function"){return false;}
    var i = 0, l = this.length;
    for(i=0;i<l;i++){ fun(this[i]); }
	return true;
};