主頁 > 知識庫 > 關(guān)于表格的正則表達(dá)式討論(表格)

關(guān)于表格的正則表達(dá)式討論(表格)

熱門標(biāo)簽:荊州智能電銷機(jī)器人 大學(xué)校門地圖標(biāo)注 銷售電銷機(jī)器人詐騙 廣西智能外呼系統(tǒng)多少錢 福建微碼電話機(jī)器人 平?jīng)龈叩碌貓D標(biāo)注商戶要收費(fèi)嗎 提高電話機(jī)器人接通率 外呼系統(tǒng)api對接 地圖標(biāo)注與公司業(yè)務(wù)關(guān)系
看過許多UBB代碼,包括JS,ASP,JSP的,一直沒發(fā)現(xiàn)表格的UBB,雖然可以直接用HTML模式實現(xiàn)相同表格功能,但對于某些開放的站點來說開放HTML模式終究是不合適的,故一直想實現(xiàn)表格的UBB。

     我的設(shè)想是在HTML編輯器(HTML,F(xiàn)RONTPAGE,DW)中作好表格,把替換為[,>替換為],直接復(fù)制HTML并提交發(fā)布。

     可惜經(jīng)過實踐,發(fā)現(xiàn)很難。因為表格的HTML標(biāo)記和其他元素的HTML標(biāo)記差別很明顯,主要原因TD,TR,特別是TABLE都能嵌套。其實我遇到的關(guān)鍵問題在于我不會寫 不包含某個單詞或語句(非單字符)的正則 ,譬如下面標(biāo)記


QUOTE:
[TABLE][TR]  [TD]哈哈[TABLE][TR][TD]的[/TD][/TR][/TABLE][/TD][/TR][/TABLE]
你要匹配正確[TD]*[/TD]你就得必須保證*不包括[TABLE][TR][TD]等,注意不能用[^\[]*?啊,因為用他無法匹配正確的[/TD]的,所以問題在與我怎么保證這個*不包括[TABLE][TR][TD]呢,(我不會寫)。所以我:

退一步,先用\[td[^\]]*?\][^\[]*?\[table找到最后一個(其實最內(nèi)層的)表格,然后把最內(nèi)層的表格轉(zhuǎn)為HTML標(biāo)記,然后循環(huán)從頭開始再來一次,一直到所有標(biāo)記被替換。這個理論上是可以實現(xiàn)的。我用JSP正在實驗,需要時間,希望有興趣朋友用ASP,PHP實驗一下。

因為我急用,所以我又退了一步,就是直接查找][TABLE]等標(biāo)記然后替換,有4個表達(dá)式,[TABLE][TR][TD]、[/TD][/TR][TR][TD]、[/TD][TD]、[/TD][/TR][TABLE] ,大家知道,UBB需要把/R/N替換成BR>的,于是我用上面作出的正則查找并替換掉所有[TABLE]和[TR]和[TD]和[/TD]和[/TR]和[/TABLE]中的換行。其實這個表達(dá)式比下面表達(dá)式就多了這個替換換行功能,其不足之處是很明顯的,就是不能完善的剔除非配套的標(biāo)記,必須保證所有TABLE標(biāo)記是正確配套的(有TBODY的再改改就是了),否則亂套???nbsp;這一步我實踐還不錯。

再退一步,其實沒法退了,就是直接單個查找替換[TABLE]等標(biāo)記,這是最苯的方法了,也是效果最不好的,因為大家知道在HTML編輯器里的表格標(biāo)記中好多換行的,而UBB是為換行轉(zhuǎn)為BR>的,所以這個方法實現(xiàn)了會發(fā)現(xiàn)好多空行的,而且這個方法和上面那一步一個共同缺點就是更不能剔除非配套標(biāo)記。


附我寫的退一步后的正則:(我用JSP)


QUOTE:
\\[(table)([^\\[]*?)\\][^\\[]*?\\[tr\\][^\\[]*?\\[td([^\\[]*)\\]|\\[\\/(td)\\][^\\[]*?\\[\\/tr\\][^\\[]*?\\[tr\\][^\\[]*?\\[td([^\\[]*)\\]|\\[\\/(td)\\][^\\[]*?\\[td([^\\[]*)\\]|\\[\\/(td)\\][^\\[]*?\\[\\/tr\\][^\\[]*?\\[\\/table\\]
我想如果是管理員發(fā)布信息什么的,能保證表格標(biāo)記的正確的話用這個還可以的。其實如果有人想搗亂的話,再嚴(yán)謹(jǐn)?shù)腢BB也不能防止的啊。
歡迎有興趣者來此討論,提出更好建議,打造最好最全的UBB。

[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]

標(biāo)簽:邯鄲 內(nèi)江 黔東 婁底 衡陽 樂山 德陽 海南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《關(guān)于表格的正則表達(dá)式討論(表格)》,本文關(guān)鍵詞  關(guān)于,表格,的,正則,表達(dá)式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《關(guān)于表格的正則表達(dá)式討論(表格)》相關(guān)的同類信息!
  • 本頁收集關(guān)于關(guān)于表格的正則表達(dá)式討論(表格)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章