php使用正则过滤js脚本代码实例

匹配的规则不能用 "/<script.*<\/script>/i",因为它不能匹配到换行符,那么多行js就匹配不掉了。

要用 "/<script[\s\S]*?<\/script>/i"。里面的?表示尽可能少重复,也就是匹配最近的一个</script>。

源码范例:

.代码如下:

<?php

header("Content-type:text/html;charset=utf-8");
 $str = ‘<script type="text/javascript" src="dd.js"></script>
测试php正则匹配掉js代码测试php正则匹配掉js代码测试php正则匹配掉js代码测试php正则匹配掉js代码测试php正则匹配掉js代码测试php正则匹配掉js代码
<script type="text/javascript" src="123.js"></script>
<script type="text/javascript">
 var aa = "sdsds";
 alert(aa);
</script>
测试php正则匹配掉js代码‘;

$preg = "/<script[\s\S]*?<\/script>/i";
 $newstr = preg_replace($preg,"",$str,3);    //第四个参数中的3表示替换3次,默认是-1,替换全部
 echo $newstr;

?>

时间: 2024-10-13 12:12:31

php使用正则过滤js脚本代码实例的相关文章

关于Cocos Creator用js脚本代码播放骨骼动画的步骤和注意事项

1.用cc.find()方法找到相应的骨骼动画节点,并把这个对象赋值给一个var出来的新对象. 具体代码:var spineboy_anim = cc.find("UI_Root/anchor_lb/spineboy"); 2.用getComponent()方法找到相应骨骼动画节点的骨骼动画组件,并把这个对象赋值给一个var出来的新对象. 具体代码:var ske_anim_comp = spineboy_anim.getComponent(sp.Skeleton); 3.把第二点的新

.net 用户控件ascx.cs注册js脚本代码无效果

在.net web项目中碰到一个比较奇怪的问题,网上没找到解决方案,先自己mark一下 问题描述: 添加一个用户控件ascx,在后端.cs添加js注册脚本,执行后没有弹出框 注册脚本为: this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>alert('提示');</script>"); this.Pa

总结ASP.NET C#中经常用到的13个JS脚本代码

1.按钮前后台事件 <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" OnClientClick="alert('客房端验证,阻止向服务器端提交');return false;" /> 2.注册相关事件:onblur,onclick,onchange this.TextBox1.Attrib

js脚本代码调试小技巧

以前写js代码调试代码查看数据是否正确的时候不知道F12(开发者工具),都是alert(xxx)或者console.log(xxx), 现在知道还可以用document.write或者try...catch或者window.onerror 还发现一个好用的东西,JSON.stringify(xxx),如果参数为对象,会显示对象的内容,不用用循环什么的了,对数组或数据对象之类的挺有用,像下面弹窗就是一个数据对象作为JSON.stringify参数的结果

前端js脚本与防止js脚本

前言 身为一名前端开发工程师,有时候业务场景是无法用手速模拟的,老司机也有翻车的时候[你懂得].因此我特意写这一篇文章,希望能够对大家有所帮助. 涉及到的内容: 1.chrome浏览器 2.js代码 3.函数节流 第一步 打开chrome浏览器,使用组合键Ctrl+shift+i打开开发者工具,接下来如图所示. 点击snippets 第二步 如图所示 点击new snippet -->输入脚本'名称'-->Ctrl+s保存. 第三步 如图所示 选择新创建的脚本'名称',在如图所示的第二步进行编

2019手机号码JS正则表达式验证实例代码

这篇文章主要介绍了2019手机号码JS正则表达式验证实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑. 简介 正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符

js实现的数字四舍五入效果代码实例

js实现的数字四舍五入效果代码实例:下面直接给出能够截取指定位数字符串,且具有四舍五入效果的代码: var num=3.1415926; console.log(num.toFixed(3)); toFixed()函数可以参阅javascript的Number对象的toFixed()方法一章节. 原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=11973 更多内容可以参阅:http://www.softwhy.com/javas

js实现的可以自动刷新的时间日期代码实例

js实现的可以自动刷新的时间日期代码实例:可以自动刷新的时间日期效果在很多网页都在使用,因为能够让页面更加动感一些,也更加人性化,用户可以实时查看页面的时间,下面就通过代码实例介绍一下如何实现此效果.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.sof

js格式化数字实例代码

js格式化数字实例代码:数字往往需要进行一定的格式化,一来是便于阅读,二来是实际需要,比如钱数就常常按千位逗号分隔,下面就是一个这样的函数能够是此功能,并且能够保留指定书目的小数,且自动实现四舍五入效果.代码实例如下: function fmoney(s,n) { n=n>0&&n<=20?n:2; s=parseFloat((s+"").replace(/[^\d\.-]/g,"")).toFixed(n)+"";