代码驿站移动版
频道导航
HTML/Xhtml
CSS
JavaScript
HTML5
PHP教程
ASP.NET
正则表达式
AJAX
ThinkPHP
Yii
MySQL
MariaDB
Oracle
MongoDB
Redis
DedeCMS
PHPCMS
帝国CMS
WordPress
Discuz
其它CMS
Zend Studio
Sublime
Notepad
Dreamweaver
Windows
Linux
Nginx
Apache
IIS
CentOS
Ubuntu
Debian
网站优化
工具资源
PHP源码
ASP.NET源码
其它源码
图标素材
按钮素材
字体素材
DedeCMS模板
帝国CMS模板
PHPCMS模板
WordPress模板
Discuz!模板
单页模板
开发软件下载
服务器软件下载
广告投放
联系我们
版权申明
软件编程
网页前端
移动开发
数据库
服务器
脚本语言
PHP代码
JAVA代码
Python代码
Android代码
当前位置:
主页
>
网页前端
>
JavaScript代码
>
论坛转贴工具中用到的正则表达式学习正则的好例子
时间:2021-03-16 10:22:03 | 栏目:
JavaScript代码
| 点击:次
电脑教程吧-常用论坛转贴工具
<html> <head> <title>电脑教程吧-常用论坛转贴工具</title> <script language="JavaScript"> <!-- function SymError() { return true; } window.onerror = SymError; //--> </SCRIPT> <SCRIPT language=JavaScript1.2> function delnull() { var str=document.getElementById('text').value; str=str.replace(/([\s]*\r\n[\s]*){2,}/gm,"\r\n"); document.getElementById('text').value=str; } function refix() { var str=document.getElementById('text').value; str=str.replace(/([\s]*\r\n[\s]*){2,}/gm,"\r\n\r\n"); document.getElementById('text').value=str; } function url() { var str=document.getElementById('text').value; str=str.replace(/^[ ]*(http:\/\/|^mms:\/\/|rtsp:\/\/|pnm:\/\/|ftp:\/\/|mmst:\/\/|mmsu:\/\/)([^\r\n]*)$/igm,"[url]$1$2[/url]"); document.getElementById('text').value=str; } function addbr() { var str=document.getElementById('text').value; str=str.replace(/\r\n/gm,"\r\n\r\n"); document.getElementById('text').value=str; } function html_trans(str) { str = str.replace(/\r/g,""); str = str.replace(/on(load|click|dbclick|mouseover|mousedown|mouseup)="[^"]+"/ig,""); str = str.replace(/<script[^>]*?>([\w\W]*?)<\/script>/ig,""); if(set.fontbash.checked) { str = str.replace(/<span[^>]*?display\s*?:\s*?none[^>]*?>([\w\W]*?)<\/span>/ig,""); str = str.replace(/<span[^>]*?font\s*?-\s*?size\s*?:\s*(0px|0pt)[^>]*?>([\w\W]*?)<\/span>/ig,""); str = str.replace(/<font([^>]+)(0px|0pt)+([^>]*)>([\w\W]*?)<\/font>/ig,""); } if(set.filtrate.checked) { str = str.replace(/[^<]*<([^>]*?)>[^<]*/ig,"<$1>"); tm=window.textfield.value; if(tm.length<1){ var arr; arr=str.match(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig); tm=arr[0].replace(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig,"$1")+"\""; i=tm.search(/\/[^\/]+"/ig); tm=tm.substr(0,i); window.textfield.value=tm+"/"; } if(tm.substr(tm.length-1,1)!="/") tm+="/"; var strtm="<img[^>]+src=[\"]?("+tm+"[^\"]+)[\"]?[^>]*>"; var re = new RegExp(strtm,"ig"); str = str.replace(re,"\n[img]$1[/img]\n"); } else { if(set.stext.checked) str = str.replace(/[^<]*<([^>]*?)>[^<]*/ig,"<$1>"); if(!set.linka.checked) str = str.replace(/<a[^>]+href=[" ]?([^"]+)[" ]?[^>]*>(.*?)<\/a>/ig,"[url=$1]$2[/url]"); if(!set.font_color.checked&&!set.stext.checked) str = str.replace(/<font([^>]+)color=([^ >]+)([^>]*)>(.*?)<\/font>/ig,"[color=$2]<font$1$3>$4</font>[/color]"); if(!set.font_size.checked&&!set.stext.checked) str = str.replace(/<font([^>]+)size=([^ >]+)([^>]*)>(.*?)<\/font>/ig,"[size=$2]<font$1$3>$4</font>[/size]"); if(!set.font_face.checked&&!set.stext.checked) str = str.replace(/<font[^>]+face=([^ >]+)[^>]*>(.*?)<\/font>/ig,"[font=$1]$2[/font]"); if(!set.img.checked) str = str.replace(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig,"\n[img]$1[/img]\n"); if(!set.odj.checked){ //return str; str = str.replace(/<object[^>]*?6BF52A52\-394A\-11d3\-B153\-00C04F79FAA6[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n<div class="UBBPanel"><div class="UBBTitle"><img src="/skin/blue/images/mediaplayer.gif" alt="" style="margin:0px 2px -3px 0px" border="0"/>播放视频文件</div><div class="UBBContent"><a id="meiti23871_href" href="javascript:MediaShow('wmv','meiti23871','$2','500','300')"><img name="meiti23871_img" src="/skin/blue/images/mm_snd.gif" style="margin:0px 3px -2px 0px" border="0" alt=""/><span id="meiti23871_text">在线播放</span></a><div id="meiti23871"></div></div></div>\n"); str = str.replace(/<object[^>]*?D27CDB6E\-AE6D\-11cf\-96B8\-444553540000[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n<div class="UBBPanel"><div class="UBBTitle"><img src="/skin/blue/images/flash.gif" alt="" style="margin:0px 2px -3px 0px" border="0"/>Flash动画</div><div class="UBBContent"><a id="meiti1845_href" href="javascript:MediaShow('swf','meiti1845','$2','500','300')"><img name="meiti1845_img" src="/skin/blue/images/mm_snd.gif" style="margin:0px 3px -2px 0px" border="0" alt=""/><span id="meiti1845_text">在线播放</span></a><div id="meiti1845"></div></div></div>\n"); str = str.replace(/<embed[^>]*type=["]?application\/x\-shockwave\-flash["]?[^>]*src=[" ]?([^"|^ ]+)[" ]?[^>]*>/ig,"\n<div class="UBBPanel"><div class="UBBTitle"><img src="/skin/blue/images/flash.gif" alt="" style="margin:0px 2px -3px 0px" border="0"/>Flash动画</div><div class="UBBContent"><a id="meiti41366_href" href="javascript:MediaShow('swf','meiti41366','$1','500','300')"><img name="meiti41366_img" src="/skin/blue/images/mm_snd.gif" style="margin:0px 3px -2px 0px" border="0" alt=""/><span id="meiti41366_text">在线播放</span></a><div id="meiti41366"></div></div></div>\n"); str = str.replace(/<embed[^>]*src=["]?([^"|^ ]+)["]?[^>]*type=["]?application\/x\-shockwave\-flash["]?[^>]*>/ig,"\n<div class="UBBPanel"><div class="UBBTitle"><img src="/skin/blue/images/flash.gif" alt="" style="margin:0px 2px -3px 0px" border="0"/>Flash动画</div><div class="UBBContent"><a id="meiti41366_href" href="javascript:MediaShow('swf','meiti41366','$1','500','300')"><img name="meiti41366_img" src="/skin/blue/images/mm_snd.gif" style="margin:0px 3px -2px 0px" border="0" alt=""/><span id="meiti41366_text">在线播放</span></a><div id="meiti41366"></div></div></div>\n"); str = str.replace(/<object[^>]*?CFCDAA03\-8BE4\-11cf\-B84B\-0020AFBBCCFA[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n<div class="UBBPanel"><div class="UBBTitle"><img src="/skin/blue/images/realplayer.gif" alt="" style="margin:0px 2px -3px 0px" border="0"/>播放real视频流文件</div><div class="UBBContent"><a id="meiti5049_href" href="javascript:MediaShow('rm','meiti5049','$2','500','300')"><img name="meiti5049_img" src="/skin/blue/images/mm_snd.gif" style="margin:0px 3px -2px 0px" border="0" alt=""/><span id="meiti5049_text">在线播放</span></a><div id="meiti5049"></div></div></div>\n"); } if(!set.font_b.checked&&!set.stext.checked){ str = str.replace(/<([\/]?)b>/ig,"[$1b]"); str = str.replace(/<([\/]?)strong>/ig,"[$1b]");} if(!set.font_u.checked&&!set.stext.checked) str = str.replace(/<([\/]?)u>/ig,"[$1u]"); if(!set.font_i.checked&&!set.stext.checked) str = str.replace(/<([\/]?)i>/ig,"[$1i]"); str = str.replace(/ /g," "); str = str.replace(/&/g,"&"); str = str.replace(/"/g,"\""); str = str.replace(/</g,"<"); str = str.replace(/>/g,">"); } str = str.replace(//ig,"\n"); str = str.replace(/<p[^>]*?>/ig,"\n\n"); str = str.replace(/<[^>]*?>/g,""); str = str.replace(/\[url=([^\]]+)\]\n(\[img\]\1\[\/img\])\n\[\/url\]/g,"$2"); str = str.replace(/\n+/g,"\n"); return str; } function copycode(obj){ obj.select(); objcopy=obj.createTextRange(); objcopy.execCommand("Copy"); } function trans(){ var str = ""; rtf.focus(); rtf.document.body.innerHTML = ""; rtf.document.execCommand("paste"); str = rtf.document.body.innerHTML; if(str.length == 0) { alert("剪贴版不存在超文本数据!"); return ""; } return html_trans(str); } function preview(){ var prewin=window.open("","",""); prewin.document.write(rtf.document.body.innerHTML); } function zhen(str) { strfound=str.replace(/\\/ig,"\\\\"); strfound=strfound.replace(/\[/ig,"\\["); strfound=strfound.replace(/\]/ig,"\\]"); strfound=strfound.replace(/\{/ig,"\\{"); strfound=strfound.replace(/\}/ig,"\\}"); strfound=strfound.replace(/\|/ig,"\\|"); strfound=strfound.replace(/\//ig,"\\/"); strfound=strfound.replace(/\^/ig,"\\^"); strfound=strfound.replace(/\./ig,"\\."); strfound=strfound.replace(/\*/ig,"\\*"); strfound=strfound.replace(/\?/ig,"\\?"); strfound=strfound.replace(/\+/ig,"\\+"); return strfound; } function replace_star() { var str=document.getElementById('text').value; if(!reg.checked) strfound=zhen(find_text.value); else strfound=find_text.value; var re = new RegExp(strfound,"ig"); str=str.replace(re,replace_text.value); document.getElementById('text').value=str; } </SCRIPT> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <style type="text/css"> TABLE { FONT-SIZE: 14px } .style2 {font-weight: bold} .style24 {font-weight: bold} .style25 { color: #0000FF; font-weight: bold; font-family: "隶书"; font-size: x-large; } </style> <meta content="Microsoft FrontPage 4.0" name="GENERATOR"></head> <body leftmargin="0" topmargin="0" bgcolor="#ffffff"> <img width='1' height='1' src='http://www.pcjc8.com'> <table style="border-collapse: collapse;" align="center" border="1" bordercolor="#CC0005" cellpadding="0" cellspacing="0" width="759"> <tbody> <tr> <td align="center" width="100%"> <table border="0" cellpadding="0" cellspacing="0" width="99%"> <tbody> <tr> <td align="center" bgcolor="#f8f8f8" class="style2"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tbody> <tr> <td align="center" class="fire"><p align="left" style="line-height: 20px;"><strong> <p align="left" style="line-height: 20px;"><table cellspacing="0" cellpadding="0" border="0" width="{TABLEWIDTH}" align="center" style="table-layout: fixed"> <tr> <td class="nav" width="90%" nowrap> <a href="http://www.pcjc8.com">电脑教程吧</a> » 转贴工具</td> </tr> </table> <p align="center" class="style25" style="line-height: 20px;"><font color="#DA2400">电脑教程吧论坛转贴工具</font></p> <hr color="#ffffff" size="1" width="98%"> </strong> </td></tr> </tbody></table><textarea class="textarea" onbeforepaste="if(document.getElementById('x_paste').checked){window.clipboardData.setData('text',trans());this.focus();}" id="text" style="width: 98%; height: 300px;" cols="100" rows="1"></textarea> <iframe id="rtf" style="width: 0px; height: 0px;" marginwidth="0" marginheight="0" src="about:blank" scrolling="no"></iframe><label for="x_paste"></label> <table align="center" border="0" width="713"> <tbody> <tr align="center"> <td width="25%"><input style="width: 150px; height: 50px;" onclick="document.getElementById('text').value += trans();" value="转换剪切板数据" name="button" type="button"></td> <td width="25%"> <p align="center"><input style="width: 150px; height: 50px;" onclick="copycode(window.text)" value="将代码复制到剪切板" type="button"> </p></td> <td width="25%"><input style="width: 150px; height: 50px;" onclick="document.getElementById('text').value=''" value="清 空 内 容" type="button"></td> <td width="25%"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tbody> <tr align="center"> <td><input title="自动分析所有超链接,并转换成超链接格式 注意:超链接必须单独在一行中!" style="width: 80px;" onclick="url()" value="分析超链接" name="Submit" type="button"></td> <td><input title="紧凑格式,删除所有空行" style="width: 80px;" onclick="delnull()" value="清除空行" name="Submit" type="button"></td></tr> <tr align="center"> <td><input title="清除多余的空行,保持最一个空行" style="width: 80px;" onclick="refix()" value="清除多余" name="Submit" type="button"></td> <td><input title="为每一行(包括空行)增加一空行" style="width: 80px;" onclick="addbr()" value="增加空行" name="Submit" type="button"></td></tr></tbody></table></td></tr></tbody></table> <form name="set"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tbody> <tr> <td title="转换的结果中将不含有图片信息" height="25" width="13%"><label for="img"><input id="img" type="checkbox"> 屏蔽图片</label></td> <td title="转换的结果中将不含有链接信息" width="14%"><label for="linka"><input id="linka" type="checkbox"> 屏蔽超链接</label></td> <td title="转换的结果中将不含音频、视频、FLASH等信息" width="14%"><label for="odj"><input id="odj" type="checkbox"> 屏蔽对象</label></td> <td title="转换的结果中将不含文本信息,同时字体属性将被自动屏蔽" width="14%"><label for="stext"><input id="stext" type="checkbox"> 屏蔽文字</label></td> <td title="为了方便帖子的阅读,强制把图片用空行隔开" width="14%"><label for="filtrate"><input id="filtrate" onclick="if(this.checked)window.base_url.style.display='block';else window.base_url.style.display='none';" type="checkbox"> 启用图片过滤</label></td> <td title="屏蔽所有定字体相关的属性" width="14%"><label for="font"><input id="font" onclick="font_color.checked=this.checked;font_size.checked=this.checked;font_face.checked=this.checked;font_b.checked=this.checked;font_i.checked=this.checked;font_u.checked=this.checked;" type="checkbox"> 屏蔽字体属性</label></td></tr> <tr> <td title="转换的结果中将不含有字体颜色信息"><label for="font_color"><input id="font_color" type="checkbox"> 屏蔽字体颜色</label></td> <td title="转换的结果中将不含有字体尺寸信息"><label for="font_size"><input id="font_size" type="checkbox"> 屏蔽字体尺寸</label></td> <td title="转换的结果中将不含有字体类型信息"><label for="font_face"><input id="font_face" type="checkbox"> 屏蔽字体类型</label></td> <td title="转换的结果中将不含有粗体信息"><label for="font_b"><input id="font_b" type="checkbox"> 屏蔽粗体</label></td> <td title="转换的结果中将不含有斜体信息"><label for="font_i"><input id="font_i" type="checkbox"> 屏蔽斜体</label></td> <td title="转换的结果中将不含有下划线信息"><label for="font_u"><input id="font_u" type="checkbox"> 屏蔽下划线</label></td><SPAN class=STYLE2><LABEL><INPUT id=fontbash type=checkbox CHECKED value=checkbox> <SPAN class=STYLE1>屏蔽干扰码</SPAN></LABEL></tr></tbody></table></form> <table id="base_url" style="display: none;" border="0" cellpadding="2" cellspacing="0" width="100%"> <tbody> <tr> <td align="center">输入图片的基本地址 <input style="background-color: rgb(255, 223, 208);" size="70" name="textfield"> <input onclick="window.textfield.value=''" value="清空" name="Submit" type="button"></td></tr> <tr> <td align="center"><font color="#006600">如果未指基本地址,则将自动取第一张图片的位置做基本地址。基本地址是指除文件名外的网络路径,如图片地址为:<font color="#0000ff">http://www.pcjc8.com/img/logo.gif</font> ,则除去图片文件名 <font color="#0000ff">logo.jpg</font> 后基本地址为:<font color="#0000ff">http://www.pcjc8.com/img/</font></font> <hr color="#000000" size="1" width="100%"> </td></tr></tbody></table> <table border="0" cellpadding="2" cellspacing="0" width="100%"> <tbody> <tr> <td class="text11" align="center" width="83%">查找文字 <input id="find_text" size="60" name="find_text"> <input onclick="set.reset();find_text.value='';replace_text.value='';window.textfield.value='';" value="全恢复默认" name="Submit" type="button"> </td> <td class="text11" rowspan="2" align="center" width="17%"><label for="reg"><input id="reg" value="1" name="reg" type="checkbox"> 使用正则语法</label> </td></tr> <tr> <td class="text11" align="center">替换文字 <input id="replace_text" size="60" name="replace_text"> <input onclick="replace_star()" value=" 开始替换 " name="Submit" type="button"></td></tr></tbody></table> <hr color="#A3C861" size="1" width="100%"> <p><font color="#FF0000">转贴工具使用说明</font></p> <p><font color="#0000FF"><span style="font-weight: 400"> 1,选中你想要转贴的内容,按 Ctrl + C 将其复制</span></font></p> <p><font color="#0000FF"><span style="font-weight: 400"> 2,回到这个页面,直接点"转换剪切板数据"按钮</span></font></p> <p><font color="#0000FF"><span style="font-weight: 400"> 3,代码转化好了,点"将代码复制到剪切板"按钮</span></font></p> <p><font color="#0000FF"><span style="font-weight: 400">4,回到论坛发帖页面,按 Ctrl + V将代码粘贴进去</span></font></p> <p><font color="#0000FF"><span style="font-weight: 400"> 5,将你要发的帖子再编辑一下,就可以顺利发帖了</span></font><p><font color="#060000"> <span style="font-weight: 400"> 本转帖工具对于其他论坛同样有帮助,如果你觉得这个工具很有帮助,可以将本页添加到收藏页。</span></font><p> <font color="#DA2400">电脑教程吧论坛欢迎你光临:</font><font color="#240000"><a href="http://www.pcjc8.com" target=_blank><font color="#800000" size="4">http://www.pcjc8.com</font></a></font><font color="#800000"> </font><font color="#DA2400">电脑教程吧论坛</font><p> </td></tr></tbody></table> <strong> <script> rtf.document.designMode="On"; </script> </strong> <div align="left" class="style24"> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="1" height="20" width="777"> </table> </div></td> </tr> </tbody></table> </body></html>
[Ctrl+A 全选 注:
引入外部Js需再刷新一下页面才能执行
]
您可能感兴趣的文章:
JavaScript常见事件处理程序实例总结
Javascript的匿名函数小结
url传递的参数值中包含&时,url自动截断问题的解决方法
javascript上下左右定时滚动插件
Javascript别踩白块儿(钢琴块儿)小游戏实现代码
相关文章
11-08
兼容浏览器的js事件绑定函数(详解)
11-23
Webpack中loader打包各种文件的方法实例
11-27
Javascript实例教程(19) 使用HoTMetal(2)
10-05
javascript判断图片是否加载完成的方法推荐
11-22
在javascript中执行任意html代码的方法示例解读
JQuery
VUE
AngularJS
MSSql
MySQL
MongoDB
Redis
Linux
Tomcat
Nginx
网站首页
广告投放
联系我们
版权申明
联系站长