ITPub博客

首页 > 应用开发 > Java > JScript5.5下String.prototype.replace(str,func)的UBB嵌套的递归解开。 (转)

JScript5.5下String.prototype.replace(str,func)的UBB嵌套的递归解开。 (转)

原创 Java 作者:gugu99 时间:2007-12-10 08:15:51 0 删除 编辑
JScript5.5下String.prototype.replace(str,func)的UBB嵌套的递归解开。 (转)[@more@]

看这个例子:

一般的UBB很难解决UBB元素"[xx]"的嵌套包含的。

使用jscript5.5的新特征,完全解决了这个问题了。

前提是UBB文本写法中,嵌套要正规,不然会影响的是嵌套内部的解析。

 

var thestr="[b]a1[b]a2[b]center[/b]b2[/b]b1[/b]";
function NormalUBB(str)
{
 if(typeof(str)!="string")str=str+"";
 str=str.replace(/([b])(.*)([/b])/gi,"$2");
 return str;
}
function Lost.NETUBB(str)
{
 if(typeof(str)!="string")str=str+"";
 str=str.replace(
 /([b])(.*)([/b])/gi,
 function(str,pos,raw)
 {
 return LostinetUBB(
 str.replace(/([b])(.*)([/b])/gi,"$2")
 );
 }
 );
 return str;
}
alert(NormalUBB(thestr));
alert(LostinetUBB(thestr));


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10748419/viewspace-990686/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    3122
  • 访问量
    2226187