$str = '<script src="../ui/js/test1.js" type="text/javascript"></script><script src="../ui/js/test2.js" type="text/javascript"></script><script type="text/javascript">alert("bb")</script><div id="web_name" class="haha">Hello World</div>';
该字符串中有三段script,
我想把
'<script src="../ui/js/test1.js" type="text/javascript"></script>'
'<script src="../ui/js/test2.js" type="text/javascript"></script>'
这两段去掉。请问高手,有木有正则可以直接匹配的啊。。前提是'<script type="text/javascript">alert("bb")</script>'这段不能去掉
或者能够匹配到"test1.js"和"test2.js"这两段也可以的。在线等,很急!谢谢
解决方案 »
- 只要有改动就会出错?
- 谁有空的进来看看!!!!!
- 将select显示的文本,保存的到数据库
- 在下刚刚接触PHP,请问各位大侠我应该如何搭建PHP环境?急!!!
- gb2312编码的的页面的参数怎么传送给UTF8的页面,不出现乱码
- 数据数(phpmyadmin)为什么老是用不了?
- 急救:用PHP来实现文件下载?
- 在RedHat8.0(其中apache2.0,MySQL3.23.52)中用phpMyAdmin(Version2.3.3)的问题
- 请问PHP安装的问题?
- php实现2个数组输出问题
- ajax传回的数组
- 求救,关于linxu下使用yum安装php与自己编译php。读mysql时转换乱码问题。
<?php
$str = '<script src="../ui/js/test1.js" type="text/javascript"></script><script src="../ui/js/test2.js" type="text/javascript"></script><script type="text/javascript">alert("bb")</script><div id="web_name" class="haha">Hello World</div>';
$patt='/<script src="..\/ui\/js\/test1.js" type="text\/javascript">.*?<\/script><script src="..\/ui\/js\/test2.js" type="text\/javascript">.*?<\/script>/';
echo htmlspecialchars($str).'<br /><hr />';
$str=preg_replace($patt,'',$str);
echo htmlspecialchars($str);
?>
谢谢!能取到test1.js和test2.js吗?
preg_match_all('/<script\s*[^>]+><\/script>/isU',$str,$arr);
print_r($arr);Array
(
[0] => Array
(
[0] => <script src="../ui/js/test1.js" type="text/javascript"></script>
[1] => <script src="../ui/js/test2.js" type="text/javascript"></script>
))
谢谢啊。我还有个问题啊。。
就是我现在的html里用到了smarty,src里的值是这样的"../<{folder}>/test.js"
用这个正则匹配的时候,只能匹配到<script src="../<{folder}>,怎么改进啊?
$str .= '<script src="../ui/<{$js}>/test2.js" type="text/javascript"></script>';
$str .= '<script src="../ui/<{$js}>/test3.js" type="text/javascript"></script>';
$str .= '<script type="text/javascript"></script>';
$str .= '<div id="web_name" class="haha">Hello World<img src="tset.jpg"></div>';$pattern = '/<script[^>]+?src[^>]*?>\s*(?:<\/script>)?/i';
print_r($arr[0]);