ฟังก์ชั่นนี้ใช้สำหรับการปิดแท็ก HTML และ UBB ทั่วไป ฉันเคยเห็นมันใน pjblog มาก่อน แต่ไม่เคยใช้มาก่อน ขอแนะนำให้คุณอ้างถึงฟังก์ชั่นนี้ใน pjblog ฟังก์ชั่น closeUBB(strContent)
-
'ปิด UBB โดยอัตโนมัติ
-
Dim arrTags, i, OpenPos, ClosePos, ใหม่, strMatchs, j, Match
Set re = New RegExp 'ประกาศวัตถุใหม่
re.IgnoreCase = True 'ตั้งค่าว่าอักขระจะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่หรือไม่
re.Global = True 'ตั้งค่าความพร้อมใช้งานทั่วโลก
arrTags = Array(code, quote, list, color, align, font, size, b, i, u, html) 'สร้างอาร์เรย์และจัดเก็บแท็กที่เกี่ยวข้องซึ่งจำเป็นต้องตรวจสอบเพื่อปิด
สำหรับ i = 0 ถึง UBound(arrTags) 'วนซ้ำเพื่อตรวจจับแต่ละองค์ประกอบในอาร์เรย์
OpenPos = 0 'เริ่มต้นจำนวนแท็กเริ่มต้นของป้ายกำกับปัจจุบัน
ClosePos = 0 'เริ่มต้นจำนวนแท็กปิดของแท็กปัจจุบัน
re.Pattern = /[ + arrTags(i) + (=[^/[/]]+|)/] 'เริ่มตัดสินจำนวนแท็กเริ่มต้นและแท็กสิ้นสุดตามลำดับ
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
OpenPosOpenPos = OpenPos + 1
ต่อไป
ใหม่รูปแบบ = /[/ + arrTags(i) + /]
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
ClosePosClosePos = ClosePos + 1
ต่อไป
สำหรับ j = 1 ถึง OpenPos - ClosePos 'เมื่อจำนวนแท็กเริ่มต้นและแท็กสิ้นสุดไม่สอดคล้องกัน ให้ปิดแท็กปัจจุบัน
strContentstrContent = strContent + [/ + arrTags(i) + ]
ต่อไป
ต่อไป
closeUBB = strContent
ตั้งค่าใหม่ = ไม่มีอะไร
ฟังก์ชันสิ้นสุด
รหัสโปรแกรม
ฟังก์ชั่น closeHTML(strContent)
-
'ปิด HTML โดยอัตโนมัติ
-
Dim arrTags, i, OpenPos, ClosePos, ใหม่, strMatchs, j, Match
ตั้งใหม่ = RegExp ใหม่
re.IgnoreCase = จริง
re.Global = จริง
arrTags = อาร์เรย์ (p, div, span, ตาราง, ul, แบบอักษร, b, u, i, h1, h2, h3, h4, h5, h6)
สำหรับ i = 0 ถึง UBound (arrTags)
โอเพ่นโพส = 0
ปิดโพส = 0
รูปแบบใหม่ = /< + arrTags(i) + ( [^/</>]+|)/>
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
OpenPosOpenPos = OpenPos + 1
ต่อไป
re.Pattern = /</ + arrTags(i) + />
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
ClosePosClosePos = ClosePos + 1
ต่อไป
สำหรับ j = 1 ถึง OpenPos - ClosePos
strContentstrContent = strContent + </ + arrTags(i) + >
ต่อไป
ต่อไป
closeHTML = strContent
ตั้งค่าใหม่ = ไม่มีอะไร
ฟังก์ชันสิ้นสุด
ต่อไปนี้เป็นโค้ดฟังก์ชันของ pjblog แต่ไม่มีความคิดเห็น ขอแนะนำให้อ้างอิงความคิดเห็นข้างต้นเพื่อการศึกษาและวิจัย
คัดลอกรหัสรหัสดังต่อไปนี้:
-
'ปิด UBB โดยอัตโนมัติ
-
ฟังก์ชั่น closeUBB(strContent)
Dim arrTags, i, OpenPos, ClosePos, ใหม่, strMatchs, j, Match
ตั้งใหม่ = RegExp ใหม่
re.IgnoreCase = จริง
re.Global = จริง
arrTags = Array(โค้ด, เครื่องหมายคำพูด, รายการ, สี, จัดตำแหน่ง, แบบอักษร, ขนาด, b, i, u, html)
สำหรับ i = 0 ถึง UBound (arrTags)
โอเพ่นโพส = 0
ปิดโพส = 0
รูปแบบใหม่ = /[ + arrTags(i) + (=[^/[/]]+|)/]
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
OpenPos = OpenPos + 1
ต่อไป
re.Pattern = /[/ + arrTags(i) + /]
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
ClosePos = ClosePos + 1
ต่อไป
สำหรับ j = 1 ถึง OpenPos - ClosePos
strContent = strContent + [/ + arrTags(i) + ]
ต่อไป
ต่อไป
closeUBB = strContent
ฟังก์ชันสิ้นสุด
-
'ปิด HTML โดยอัตโนมัติ
-
ฟังก์ชั่น closeHTML(strContent)
Dim arrTags, i, OpenPos, ClosePos, ใหม่, strMatchs, j, Match
ตั้งใหม่ = RegExp ใหม่
re.IgnoreCase = จริง
re.Global = จริง
arrTags = อาร์เรย์ (p, div, span, ตาราง, ul, แบบอักษร, b, u, i, h1, h2, h3, h4, h5, h6)
สำหรับ i = 0 ถึง UBound (arrTags)
โอเพ่นโพส = 0
ปิดโพส = 0
ใหม่รูปแบบ = /< + arrTags(i) + ( [^/</>]+|)/>
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
OpenPos = OpenPos + 1
ต่อไป
re.Pattern = /</ + arrTags(i) + />
ตั้งค่า strMatchs = re.Execute (strContent)
สำหรับการแข่งขันแต่ละครั้งใน strMatchs
ClosePos = ClosePos + 1
ต่อไป
สำหรับ j = 1 ถึง OpenPos - ClosePos
strContent = strContent + </ + arrTags(i) + >
ต่อไป
ต่อไป
closeHTML = strContent
ฟังก์ชันสิ้นสุด