龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

将代码中的HTML标签img转换为[img]url[/img]js代码

时间:2012-12-29 08:41来源:未知 作者:admin 点击:
分享到:
我们利用正则把 html标签转换成ubb代码,有需要的同学可参考一下。 代码如下 /img(?:s*w*?s*=s*.+?)*?s*srcs*=s*(.+?)(?:s*w*?s*=s*.+?)*s*/ig 这段正则和匹配链接标签的正则基本一样,修改如下,标签名
我们利用正则把 html标签转换成ubb代码,有需要的同学可参考一下。
 代码如下

/<img(?:s*w*?s*=s*".+?")*?s*srcs*=s*"(.+?)"(?:s*w*?s*=s*".+?")*s*>/ig

这段正则和匹配链接标签的正则基本一样,修改如下,标签名img,没有结束标签而是>结束。

测试代码如下:

 代码如下
 <script type="text/javascript">
 function replaceReg(reg,str){
  return str.replace(reg,'[img]$1[/img]')
 }
 var reg =
/<img(?:s*w*?s*=s*".+?")*?s*srcs*=s*"(.+?)"(?:s*w*?s*=s*".+?")*s*>/ig;
 var str = '我就是传说中的图片了<img src="URL">哎。';
 document.write(replaceReg(reg,str)+'<br />');
 </script>

第二个是替换object代码嵌入的flash代码替换为[swf]url[/swf]。

针对原文的正则如下:

 代码如下
 /<object[sS]*?src=([sS]+?)(?=s)[sS]*</object>/i

 如果是所有的属性都有双引号的话正则也需要修改。

测试如下:

 代码如下

 <script type="text/javascript">
 function replaceReg(reg,str){
  return str.replace(reg,'[swf]$1[/swf]')
 }
 var reg = /<object[sS]*?src=([sS]+?)(?=s)[sS]*</object>/i;
 var str = '<object classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000
codebase=http://download.macromedia.com/pub/shockwave/cabs/flash/
swflash.cab#version=5,0,0,0 width=255 height=250><param name=movie
value=url><param name=quality value=high><embed src=url quality=high
pluginspage=http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash type=application/x-shockwave-flash
width=255 height=250></embed></object>';
 document.write(replaceReg(reg,str)+'<br />');
 </script>


精彩图集

赞助商链接