分享
 
 
 

UBB代码解释程序JS代码

王朝html/css/js·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

上篇文章介绍了这个程序的一些功能,经过测试,修改部分BUG,现贴出来供大家参考.

//程序名称: XYCODE解释程序

//程序运行: IE5.0或SERVER

//程序设计: 小雨

//作者信箱: 8988@sina.com

//完成时间: 2005年1月

//调用方式: <script src="xycode.js" language=javascript></script>

// 或: <script src="xycode.js" language=javascript runat=server></script>

//执行方式: XYCODE(XYCODE文本)

//声明:本程序仅提供网页爱好者参考,如果用于商业运作,请你来信联系。

function XYCODE(context){

context=context.replace(/&/g,"&amp;");

context=context.replace(/</g,"&#60;");

context=context.replace(/>/g,"&#62;");

context=XYconv(context,"img",0);

context=XYconv(context,"hr",0);

context=XYconv(context,"flash",0);

context=XYconv(context,"vod",0);

context=XYconv(context,"music",0);

context=XYconv(context,"code",1);

context=XYconv(context,"i",1);

context=XYconv(context,"b",1);

context=XYconv(context,"u",1);

context=XYconv(context,"left",1);

context=XYconv(context,"center",1);

context=XYconv(context,"right",1);

context=XYconv(context,"list",1);

context=XYconv(context,"color",1);

context=XYconv(context,"bg",1);

context=XYconv(context,"size",1);

context=XYconv(context,"face",1);

context=XYconv(context,"font",1);

context=XYconv(context,"fly",1);

context=XYconv(context,"mail",1);

context=XYconv(context,"url",1);

context=XYconv(context,"box",1);

context=XYconv(context,"tab",1);

context=context.replace(/\xbd\xbd/g,"");

context=context.replace(/ /g,"&nbsp;");

var tempstr;

while(true){

if (/(<[a-z]+&nbsp;[^>]*>)/i.test(context)){

tempstr=RegExp.$1.replace(/&nbsp;/g," ");

context=context.replace(/(<[a-z]+&nbsp;[^>]*>)/i,tempstr);

}

else break;

}

context=context.replace(/\n/g,"<br>");

//context=context.replace(/\"/,"&quot;");

return context;

}

function XYconv(context,cmd,mode){

var len=cmd.length;

var convtxt=context;

var lt="["+String.fromCharCode(0XBD,0XBD);

var lt="["+String.fromCharCode(0XBD,0XBD);

while(true){

var txt=convtxt.toLowerCase();

var p1=txt.indexOf("["+cmd);

if (p1==-1) break;

var p2=txt.indexOf("]",p1);

if (p2==-1) break;

var ltext=convtxt.substring(0,p1);

var rtext=convtxt.substr(p2+1);

if (mode==0){

//单目代码解释开始

var cmdtxt=txt.substring(p1+len+1,p2).replace(/(\s+)$/g,"").replace(/^(\s+)/g,"");

switch(cmd){

case "img":

//显示图片

//[IMG="图片路径" WIDTH=宽 HEIGHT=高 BORDER=边框宽度 COLOR=边框颜色 ALIGN=对齐方式]

if (getImage(cmdtxt,"=")) {

convtxt=ltext+"<IMG SRC="+RegExp.$1;

if (getColor(cmdtxt,"color=")) clr=RegExp.$1;

else clr="";

if (getNumber(cmdtxt,"border="))

if (clr=="") convtxt=convtxt+"BORDER="+RegExp.$1;

else convtxt=convtxt+" STYLE=\"border:"+RegExp.$1+" solid "+clr+"\"";

if (getNumberp(cmdtxt,"width=")) convtxt=convtxt+ " WIDTH=" +RegExp.$1;

if (getNumberp(cmdtxt,"height=")) convtxt=convtxt+" HEIGHT="+RegExp.$1;

if (getAlign(cmdtxt)) convtxt=convtxt+" ALIGN="+RegExp.$1;

else if(getValign(cmdtxt)) convtxt=convtxt+" ALIGN="+RegExp.$1;

convtxt=convtxt+">"+rtext;

break;

}

convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "hr":

//画横线

//[HR=横线式样 SIZE=横线粗细 WIDTH=宽 COLOR=横线颜色 ALIGN=对齐方式]

//说明:所有参数均要省略

// 横线式样=1时表示没有阴影

// ALIGN=LEFT|CENTER|RIGHT

convtxt="";

if (getStr(cmdtxt,"=1")) convtxt=" NOSHADE";

if (getNumber(cmdtxt,"size=")) convtxt=convtxt+" SIZE=" +RegExp.$1;

if (getColor(cmdtxt,"color=")) convtxt=convtxt+" COLOR="+RegExp.$1;

if (getNumberp(cmdtxt,"width=")) convtxt=convtxt+" WIDTH="+RegExp.$1;

if (getAlign(cmdtxt)) convtxt=convtxt+" ALIGN="+RegExp.$1;

convtxt=ltext.replace(/\r\n$/,"")+"<HR"+convtxt+">"+rtext.replace(/^\r\n/,"");

break;

case "flash":

//显示FLASH

//[FLASH="FLASH文件路径" WIDTH=宽 HEIGHT=高 MODE=显示模式 ALIGN=对齐方式]

//说明:FLASH文件路径必须填写

// 显示模式=1时表示透明

// ALIGN=LEFT|CENTER|RIGHT|ABSBOTTOM|ABSMIDDLE|BASELINE|BOTTOM|MIDDLE|TEXTTOP|TOP

if (getPath(cmdtxt,"=")) {

url=RegExp.$1;

if (/\.swf\"$/.test(url)){

convtxt=ltext+"<EMBED SRC="+url;

if (getStr(cmdtxt,"mode=1")) convtxt=convtxt+" WMODE=Transparent";

if (getNumberp(cmdtxt,"width=")) convtxt=convtxt+ " WIDTH=" +RegExp.$1;

else convtxt=convtxt+" WIDTH=600";

if (getNumberp(cmdtxt,"height=")) convtxt=convtxt+" HEIGHT="+RegExp.$1;

else convtxt=convtxt+" HEIGHT=400";

if (getAlign(cmdtxt)) convtxt=convtxt+" ALIGN="+RegExp.$1;

else if(getValign(cmdtxt)) convtxt=convtxt+" ALIGN="+RegExp.$1;

convtxt=convtxt+" TYPE=application/x-shockwave-flash QUALITY=high></EMBED>"+rtext;

break;

}

}

convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "vod":

//播放视频

//[VOD="VOD文件路径" WIDTH=宽 HEIGHT=高 ALIGN=对齐方式]

//说明:VOD文件路径必须填写

// ALIGN=LEFT|CENTER|RIGHT|ABSBOTTOM|ABSMIDDLE|BASELINE|BOTTOM|MIDDLE|TEXTTOP|TOP

if (getPath(cmdtxt,"=")) {

url=RegExp.$1;

if (getNumberp(cmdtxt,"width=")) w=RegExp.$1;

else w=380;

if (getNumberp(cmdtxt,"height=")) h=RegExp.$1;

else h=350;

agn="";

if (getAlign(cmdtxt)) agn=" ALIGN="+RegExp.$1;

else if(getValign(cmdtxt)) agn=" ALIGN="+RegExp.$1;

if (/\.(m3u|cda|mpg|mpeg|avi|rm|rmvb|mov)\"$/.test(url)){

convtxt=ltext+"<EMBED SRC="+url+" WIDTH="+w+" HEIGHT="+h+agn+" CONTROLS=all CONTROLS=imagewindow AUTOSTART=-1>"+rtext;

break;

}

else if(/\.(wmv|asx|asf|wm)\"$/.test(url)){

convtxt=ltext+"<OBJECT CLASSID=clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6 WIDTH="+w+" HEIGHT="+h+agn+" CODEBASE=\"\"><PARAM NAME=URL VALUE="+url+"></OBJECT>"+rtext;

break;

}

}

convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "music":

//播放音乐

//[MUSIC="音乐文件路径" CTRL=是否显示控制板 LOOP=循环次数 AUTO=是否自动播放]

//说明:音乐文件路径必须填写

if (getPath(cmdtxt,"=")) {

url=RegExp.$1;

if (/\.(mp3|m3u|cda|wav|ra|rm|mid|midi|rmi|wma|mpg)\"$/.test(url)){

if (getNumber(cmdtxt,"loop=")) loop=RegExp.$1;

else loop=1;

convtxt=ltext+"<EMBED SRC="+url+" LOOP="+loop;

if (getStr(cmdtxt,"ctrl=(-1|1|yes|true)")) {

convtxt=convtxt+" HEIGHT=26 WIDTH=350 CONTROLS=ControlPanel";

if (getStr(cmdtxt,"auto=(0|no|false)")) convtxt=convtxt+" AUTOSTART=0";

else convtxt=convtxt+" AUTOSTART=-1";

}

convtxt=convtxt+">"+rtext;

break;

}

}

convtxt=ltext+lt+convtxt.substr(p1+1);

break;

}

//单目代码解释结束

}

else if(mode==1){

//双目代码解释开始

p3=txt.lastIndexOf("[/"+cmd+"]");

if (p3<=p2) break;

while(true){

p4=txt.indexOf("[/"+cmd+"]",p2+1);

if (p4==-1 || p4>=p3) break;

p5=txt.indexOf("["+cmd,p2+1);

if (p5>p3 || p5<p4) break;

p6=txt.indexOf("]");

if (p6==-1 || p6>p3) break;

p3=p4;

}

//ltext=convtxt.substring(0,p1);

rtext=convtxt.substr(p3+len+3);

str1=convtxt.substring(p1+len+1,p2).replace(/(\s+) $/g,"").replace(/^(\s+)/g,"");

str2=convtxt.substring(p2+1,p3);

switch(cmd){

case "code":

convtxt=ltext+"[box=1 pad=5 style=4 bgcolor=#eeeeee]"+str2.replace(/[/g,lt).replace(/^[x0ax0d]+/,"")+"[/box]"+rtext;

break;

case "i":

case "b":

case "u":

//设置文字斜体、加粗、加下划线效果

//[I|B|U]显示内容[/I|B|U]

convtxt=ltext+"<"+cmd.toUpperCase()+">"+str2+"</"+cmd.toUpperCase()+">"+rtext;

break;

case "left":

case "center":

case "right":

//设置对齐方式

//[LEFT|CENTER|RIGHT]显示内容[/LEFT|CENTER|RIGHT]

//说明:靠左|居中|靠右

convtxt=ltext+"<DIV ALIGN="+cmd+">"+str2+"</DIV>"+rtext;

break;

case "list":

//设置项目列表

//[LIST=项目列表式样]显示内容[/LIST]

//说明:项目列表式样=1|A|a|I|i

// 每行自动项目编号,无编号式样时是园点式样

if (getStr(str1,"=([1|a|A|i|I])")) convtxt="<UL TYPE="+RegExp.$1+"><LI>";

else convtxt="<UL><LI>";

str2=str2.replace(/^([\n\r]+)/g,"").replace(/([\n\r]+)$/g,"").replace(/\n/g,"<LI>");

ltext=ltext.replace(/([\n\r]+)$/,"");

rtext=rtext.replace(/^([\n\r]+)/,"");

convtxt=ltext+convtxt+str2+"</UL>"+rtext;

break;

case "color":

//设置文字颜色

//显示内容

if (getColor(str1,"="))

convtxt=ltext+"<FONT COLOR="+RegExp.$1+">"+str2+"</FONT>"+rtext;

else convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "bg":

//设置背景颜色和背景图片

//[BG=背景颜色 IMG="背景图片"]显示内容[/BG]

bg="";

if (getColor(str1,"=")) bg="background-color:"+RegExp.$1+";";

if (getImage(str1,"img=")) bg=bg+"background-image:url("+url+");";

if (bg!="") convtext=ltext+"<FONT STYLE="+bg+">"+str2+"</FONT>"+rtext;

else convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "size":

//设置文字大小

//显示内容

if (getStr(str1,"=(\d+)(pt|px|mm|em)?"))

convtxt=ltext+"<FONT STYLE=font-size:"+RegExp.$1+RegExp.$2+">"+str2+"</FONT>"+rtext;

else convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "face":

//设置文字字体

//[FACE="字体名称"]显示内容[/FACE]

if(getPath(str1,"="))

convtxt=ltext+"<FONT FACE="+RegExp.$1+">"+str2+"</FONT>"+rtext;

else convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "font":

//设置文字属性

//[FONT COLOR=文字颜色 BGCOLOR=背景颜色 BG="背景图片" SIZE=文字大小 FACE="字体"]文字内容[/FONT]

tmp="";

if (getColor(str1,"bgcolor=")) tmp=";background-color:"+RegExp.$1;

if (getImage(str1,"bg=")) tmp=tmp+";background-image:url("+url+")";

if (getColor(str1,"color=")) tmp=tmp+";color:"+RegExp.$1;

if (getStr(str1,"size=(\d+)(pt|px|mm|em)?")) tmp=tmp+";font-size:"+RegExp.$1+RegExp.$2;

if (getPath(str1,"face=")) tmp=tmp+";font-family:"+RegExp.$1;

if (tmp!="") convtxt=ltext+"<FONT STYLE="+tmp.substr(1)+">"+str2+"</FONT>"+rtext;

else convtxt=ltext+"<font>"+str2+"</font>"+rtext;

break;

case "fly":

//滚动字幕

//[FLY=滚动方向 STOP=鼠标移到字幕上时是否停止滚动 STEP=移动步长 WAIT=时间间隔 LOOP=滚动次数 WIDTH=字幕宽度 HEIGHT=字幕高度 COLOR=字幕颜色 BGCOLOR=背景颜色 BG="背景图片"]滚动内容[/FLY]

//默认值:向左 步长4 间隔90 不限次数

convtxt="";

if (getStr(str1,"=(left|right|up|down|l|r|u|d|0|1|2|3)")) {

switch(RegExp.$1){

case "1":

case "right":

case "r":

m="right";

break;

case "2":

case "up":

case "u":

m="up";

break;

case "3":

case "down":

case "d":

m="down";

break;

}

convtxt=" DIRECTION="+m;

}

if (getNumber(str1,"step=")) convtxt=convtxt+" SCROLLAMOUNT="+RegExp.$1;

if (getNumber(str1,"wait=")) convtxt=convtxt+" SCROLLDELAY=" +RegExp.$1;

if (getNumber(str1,"mode=")) {

if (RegExp.$1=="3") convtxt=convtxt+" BEHAVIOR=silde";

else if(RegExp.$1=="2") convtxt=convtxt+" BEHAVIOR=alternate";

}

if (getNumber(str1,"loop=")) convtxt=convtxt+" LOOP="+RegExp.$1;

if (getNumberp(str1,"width=")) convtxt=convtxt+" WIDTH="+RegExp.$1;

if (getNumberp(str1,"height=")) convtxt=convtxt+" HEIGHT="+RegExp.$1;

if (getColor(str1,"color=")) convtxt=convtxt+" COLOR="+RegExp.$1;

if (getColor(str1,"bgcolor=")) convtxt=convtxt+" BGCOLOR="+RegExp.$1;

if (getImage(str1,"bg=")) convtxt=convtxt+" STYLE=background-image:url("+url+")";

if (getStr(str1,"stop")) convtxt=convtxt+" onmouseover=this.stop() onmouseout=this.start()"

convtxt=ltext+"<MARQUEE"+convtxt+">"+str2+"</MARQUEE>"+rtext;

break;

case "url":

case "mail":

//加链接地址或加邮箱地址

//[URL|MAIL="地址" COLOR=链接颜色 NOLINE]链接显示内容[/URL|MAIL]

if (getStr(str1,"noline")) clr=" STYLE=text-decoration:none"

else clr=" STYLE=text-decoration:underline"

if (getColor(str1,"color=")) clr=clr+";color:"+RegExp.$1;

if (str2!="" && getPath(str1,"=")){

if (cmd=="mail") convtxt=ltext+"<A HREF=\""+str2+""+rtext'mailto:"+(RegExp.$1.substr(1))+clr+">"+str2+"</A>"+rtext;

else convtxt=ltext+"<A HREF="+RegExp.$1+clr+">"+str2+"</A>"+rtext;

}

else convtxt=ltext+lt+convtxt.substr(p1+1);

break;

case "box":

//为显示内容加边框

//[BOX=边框粗细 STYLE=边框样式 PADD=边框空白宽度 WIDTH=边框宽度 HEIGHT=边框高度 COLOR=边框颜色 BG=背景颜色或"图片" ALIGN=水平对齐方式 VALIGN=竖直对齐方式]显示内容[/BOX]

if (getNumber(str1,"=")) box=";border-width:"+RegExp.$1;

else box=";border-width:1";

if (getColor(str1,"color=")) box=box+";border-color:"+RegExp.$1;

sty="solid";

if (getNumber(str1,"style=")){

switch(RegExp.$1){

case "0":

sty="none";

break;

case "2":

sty="dotted";

break;

case "3":

sty="dashed";

break;

case "4":

sty="double";

break;

case "5":

sty="groove";

break;

case "6":

sty="ridge";

break;

case "7":

sty="inset";

break;

case "8":

sty="outset";

break;

}

}

box=box+";border-style:"+sty;

if (getNumberp(str1,"width=")) box=box+";width:"+RegExp.$1;

if (getNumberp(str1,"height=")) box=box+";height:"+RegExp.$1;

box=box.substr(1);

if (box!="") box=" STYLE="+box;

if (getNumber(str1,"padd=")) bg=";padding:"+RegExp.$1;

else bg=";padding:5";

if (getColor(str1,"bgcolor=")) bg=bg+";background-color:"+RegExp.$1;

if (getImage(str1,"bg=")) bg=bg+";background-image:url("+url+")";

if (getAlign(str1)) bg=bg+";text-align:"+RegExp.$1;

bg=bg.substr(1);

if (bg!="") bg=" STYLE="+bg;

if (getValign(str1)) bg=bg+" VALIGN="+RegExp.$1;

convtxt=ltext+"<DIV"+box+"><DIV"+bg+">"+str2.replace(/^\r\n/,"")+"</DIV></DIV>"+rtext.replace(/^\r\n/,"");

break;

case "tab":

//显示表格

//[TAB][TD]内容1[TD]内容2....换行符[TD]内容1[TD]内容2....[/TAB]

//说明:

//[TAB]内参数:

// LINESIZE =表格线宽度

// TABWIDTH =表格宽度

// TABHEIGHT=表格高度

// SPAC =单元格间距

// PADD =单元格边距

// HIGHCOLOR=亮线颜色

// DRAKCOLOR=暗线颜色

// TABBGCLR =表格背景颜色

// BG =表格背景图片

// LINECOLOR=表格线颜色

// 以下内容对所有单元格

// COLOR =文字颜色

// SIZE =文字大小

// FACE =文字字体

//

// ALIGN =单元格内容水平对齐方式

// VALIGN =单元格内容竖直对齐方式

// HEIGHT =单元格高度

// BGCOLOR =单元格背景颜色

//[TD]内容参数:

// 以下内容仅限指定单元格

// COLOR =文字颜色

// SIZE =文字大小

// FACE =文字字体

//

// ALIGN =单元格内容水平对齐方式

// VALIGN =单元格内容竖直对齐方式

// HEIGHT =单元格高度

// BGCOLOR =单元格背景颜色

// BG =单元格背景图片

tmp=str2.replace(/^([\x0d\x0a]+)/,"").replace(/([\x0d\x0a]+)$/,"");

if (tmp!=""){

tab=""

if (getNumber(str1,"linesize=")) tab="<TABLE BORDER="+RegExp.$1;

else tab="<TABLE BORDER=1";

if (getNumberp(str1,"tabwidth=")) tab=tab+" WIDTH="+RegExp.$1;

else tab=tab+" WIDTH=100%";

if (getNumberp(str1,"tabheight=")) tab=tab+" HEIGHT="+RegExp.$1;

if (getNumber(str1,"spac=")) tab=tab+" CELLSPACING="+RegExp.$1;

if (getNumber(str1,"padd=")) tab=tab+" CELLPADDING="+RegExp.$1;

if (getColor(str1,"linecolor=")) tab=tab+" BORDERCOLOR="+RegExp.$1;

if (getColor(str1,"highcolor=")) tab=tab+" BORDERCOLORLIGH="+RegExp.$1;

if (getColor(str1,"drakcolor=")) tab=tab+" BORDERCOLORDRAK="+RegExp.$1;

if (getColor(str1,"tabbgclr=")) tab=tab+" BGCOLOR="+RegExp.$1;

if (getImage(str1,"bg=")) tab=tab+" BACKGROUND="+RegExp.$1;

ft="";

if (getColor(str1,"color=")) ft="color:"+RegExp.$1;

if (getStr(str1,"size=(\d+)(pt|px|mm|em)?")) ft=ft+";font-size:"+RegExp.$1+RegExp.$2;

if (getPath(str1,"face=")) ft=ft+";font-family:"+RegExp.$1.replace(/\"/g,"");

if (ft!="") ft=" STYLE=\""+ft+"\"";

tab=tab+ft+">";

tdh="";

tdbg="";

agn="";

vgn="";

if (getAlign(str1,"align=")) agn=" ALIGN="+RegExp.$1;

if (getValign(str1,"valign=")) vgn=" VALIGN="+RegExp.$1;

if (getNumberp(str1,"height=")) tdh=" HEIGHT="+RegExp.$1;

if (getColor(str1,"bgcolor=")) tdbg=" BGCOLOR="+RegExp.$1;

tr=tmp.split("\r\n");

h=tr.length;

w=0;

for (i=0;i<h;i++){

td=tr[i].split(/\[td/i);

if(w<td.length) w=td.length;

}

s=tab;

for(i=0;i<h;i++){

td=tr[i].split(/\[td/i);

ww=td.length;

s=s+"<TR>";

for (j=0;j<w;j++){

if (j<ww){

//alert("“"+td[j]+"”\nlength="+td[j].length);

k=td[j].indexOf("]");

if (k==-1){

x=td[j];

if (x=="") x="&nbsp;"

s=s+"<TD"+agn+vgn+tdbg+tdh+">"+x+"</TD>";

}

else {

x=td[j].substr(k+1);

xx=td[j].substring(0,k);

sty=agn;

if (getAlign(xx)) sty=" ALIGN="+RegExp.$1;

if (getValign(xx)) sty=sty+" VALIGN="+RegExp.$1;

else sty=sty+vgn;

if (getColor(xx,"bgcolor=")) sty=sty+" BGCOLOR="+RegExp.$1;

else sty=sty+tdbg;

if (getNumberp(xx,"height=")) sty=sty+" HEIGHT="+RegExp.$1;

else sty=sty+tdh;

if (getImage(xx,"bg=")) sty=sty+" BACKGROUND="+RegExp.$1;

ft="";

if (getColor(xx,"color=")) ft="color:"+RegExp.$1;

if (getStr(xx,"size=(\d+)(pt|px|mm|em)?")) ft=ft+";font-size:"+RegExp.$1+RegExp.$2;

if (getPath(xx,"face=")) ft=ft+";font-family:"+RegExp.$1.replace(/\"/g,"");

if (ft!="") ft=" STYLE=\""+ft+"\"";

if (x=="") x="&nbsp;"

s=s+"<TD"+sty+ft+">"+x+"</TD>";

}

}

else s=s+"<TD"+agn+vgn+tdbg+tdh+">&nbsp;</TD>";

}

s=s+"</tr>";

}

convtxt=ltext+s+"</TABLE>"+rtext;

break;

}

convtxt=ltext+lt+convtxt.substr(p1+1);

break;

}

//双目代码解释结束

}

else {

//多目代码解释开始

//多目代码解释结束

}

}

return convtxt;

}

function getAlign(str){

str=" "+str+" ";

return / align=(LEFT|CENTER|RIGHT) /i.test(str);

}

function getValign(str){

str=" "+str+" ";

return / valign=(ABSBOTTOM|ABSMIDDLE|BASELINE|BOTTOM|MIDDLE|TEXTTOP|TOP) /i.test(str);

}

function getNumberp(str,cmd){

str=" "+str+" ";

eval("re=/ "+cmd+"(\d+%?) /i");

return re.test(str);

}

function getNumber(str,cmd){

str=" "+str+" ";

eval("re=/ "+cmd+"(\-?\d+) /i");

return re.test(str);

}

function getColor(str,cmd){

str=" "+str+" ";

eval("re=/ "+cmd+"(\d+) /i");

if (re.test(str)) return true;

eval("re=/ "+cmd+"(#[0-9a-z]{6}) /i");

if (re.test(str)) return true;

eval("re=/ "+cmd+"(red|blue|write|yellow|teal|tan|aqua|black|brown|cyan|gray|green) /i");

return re.test(str);

}

function getImage(str,cmd){

str=" "+str+" ";

if (/\.(gif|jpeg|jpg|png)\" $/i.test(str)){

eval("re=/ "+cmd+"(\"[^\\f\\n\\r\\t\\v]+\") /i");

return re.test(str);

}

return false;

}

function getStr(str,cmd){

str=" "+str+" ";

eval("re=/ "+cmd+" /i");

return re.test(str);

}

function getPath(str,cmd){

str=" "+str+" ";

eval("re=/ "+cmd+"(\"[^\\f\\n\\r\\t\\v]+\") /i");

return re.test(str);

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有