JScript5.5下String.prototype.replace(str,func)的UBB巢狀的遞迴解開。 (轉)
JScript5.5下String.prototype.replace(str,func)的UBB巢狀的遞迴解開。 (轉)[@more@]
看這個例子:
一般的UBB很難解決UBB元素"[xx]"的巢狀包含的。
使用5.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 LostUBB(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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 巢狀類遞迴巢狀遞迴
- [work] python巢狀字典的遞迴遍歷Python巢狀遞迴
- 迴圈_巢狀巢狀
- 遞迴元件組合拳,無懼頁面巢狀遞迴元件巢狀
- Blazor巢狀傳遞Blazor巢狀
- Python 迴圈巢狀Python巢狀
- 巢狀迴圈成本消耗巢狀
- Python的if else 巢狀 和forin while 迴圈Python巢狀While
- MySQL Join原理分析(緩衝塊巢狀與索引巢狀迴圈)MySql巢狀索引
- 瞭解巢狀迴圈聯接、合併聯接巢狀
- 瞭解 JavaScript 的遞迴JavaScript遞迴
- python怎麼迴圈巢狀Python巢狀
- python 跳出巢狀迴圈方法Python巢狀
- thinkphp中volist的多重迴圈,標籤巢狀PHP巢狀
- 最佳化兩個簡單的巢狀迴圈巢狀
- Oracle 巢狀表(轉)Oracle巢狀
- 巢狀使用 datalist (轉)巢狀
- 集合的巢狀巢狀
- 盒子的巢狀巢狀
- 高效遍歷匹配Json資料,避免巢狀迴圈[轉]JSON巢狀
- Sql 巢狀迴圈最佳化案例SQL巢狀
- 詳解Python的函式巢狀Python函式巢狀
- 迴圈中巢狀非同步操作的流程控制巢狀非同步
- Oracle的表連線方法(二)巢狀迴圈連線Oracle巢狀
- 關於迴圈巢狀nested loops的一點分析巢狀OOP
- 展開巢狀列表巢狀
- 集合框架-集合的巢狀遍歷(HashMap巢狀HashMap)框架巢狀HashMap
- 集合框架-集合的巢狀遍歷(HashMap巢狀ArrayList)框架巢狀HashMap
- 集合框架-集合的巢狀遍歷(ArrayList巢狀HashMap)框架巢狀HashMap
- 集合框架-集合的巢狀遍歷(多層巢狀)框架巢狀
- iterate的巢狀使用巢狀
- while + else 使用,while死迴圈與while的巢狀,for迴圈基本使用,range關鍵字,for的迴圈補充(break、continue、else) ,for迴圈的巢狀,基本資料型別及內建方法While巢狀資料型別
- 遞迴演算法轉換為非遞迴演算法的技巧遞迴演算法
- 用ASP實現論壇的UBB功能 (轉)
- 巢狀的map轉json,怎麼整,求助巢狀JSON
- 遞迴與goto (轉)遞迴Go
- python 利用 for ... else 跳出雙層巢狀迴圈Python巢狀
- 兩表連線一:巢狀迴圈連線巢狀