การวิเคราะห์โค้ดฟังก์ชัน ASP สำหรับการลบ HTML นั้นแนบมาพร้อมกับตัวอย่าง ได้รับการทดสอบโดยการเขียนโปรแกรม Script Home และใช้งานง่ายจริงๆ
รหัสต่อไปนี้จะไม่แทนที่ < ที่อยู่ตรงกลางของ ld<sad ดังนั้นเนื้อหาจึงยังคงเป็นปกติ
รหัสมีดังนี้:
-
ฟังก์ชั่น nohtml(str)
สลัวอีกครั้ง
ตั้งค่าใหม่ = RegExp ใหม่
re.IgnoreCase = จริง
re.Global=จริง
re.Pattern=(/<.[^/<]*/>)
str=re.replace(str, )
re.Pattern=(/<//[^/<]*/>)
str=re.replace(str, )
str=แทนที่(str, ,)
str=แทนที่(str, ,)
nohtml=str
ตั้งค่าใหม่ = ไม่มีอะไร
ฟังก์ชั่นสิ้นสุด
str=<title>sadjksjdl script home ยินดีต้อนรับคุณ sajdljsald<sadsadsad<br> 'นี่คือการทดสอบ
การตอบสนองเขียน nohtml (str)
-
ผลลัพธ์คือ:
รหัสมีดังนี้:
หน้าแรกของสคริปต์ sadjksjdl ยินดีต้อนรับคุณ sajdljsald<sadsadsad
อย่างไรก็ตาม รหัสต่อไปนี้ไม่ได้ถาม เพียงแค่เห็น < และลืมเกี่ยวกับการจับคู่แบบไม่จำกัดที่อยู่ด้านหลัง
รหัสมีดังนี้:
-
ฟังก์ชั่น dropHtml (Byval strHTML)
Dim objRegExp, แมตช์, แมตช์
ตั้งค่า objRegExp = Regexp ใหม่
objRegExp.IgnoreCase = จริง
objRegExp.Global = จริง
'ปิดเทอมแล้ว <>
objRegExp.Pattern = <.+?>
'จับคู่
ตั้งค่าการจับคู่ = objRegExp.Execute(strHTML)
' สำรวจชุดที่ตรงกันและแทนที่รายการที่ตรงกัน
สำหรับการแข่งขันแต่ละครั้งในการแข่งขัน
strHtml=แทนที่(strHTML,Match.Value,)
ต่อไป
dropHtml=strHTML
ตั้ง objRegExp = ไม่มีเลย
ฟังก์ชันสิ้นสุด
str=<title>sadjksjdl script home ยินดีต้อนรับคุณ sajdljsald<sadsadsad<br> 'นี่คือการทดสอบ
การตอบสนองเขียน dropHtml (str)
-
ผลลัพธ์คือ:
รหัสมีดังนี้:
หน้าแรกของสคริปต์ sadjksjdl ยินดีต้อนรับคุณ sajdljsald