แนะนำ: สตริง ASP Tagged ระบุว่าเป็นตัวพิมพ์ใหญ่ รหัสฟังก์ชั่นการเปลี่ยนสามัญมีดังนี้: ฟังก์ชั่นสาธารณะไฮไลต์ (s, f) dim tl, tm, tr, k tl = tm = tr = s k = instr (1, tr, f, 1) ทำในขณะที่ k0 tl = tl ซ้าย (tr, k-1) tm = mid (tr, k, len (f)) tr = ขวา (tr, len (tr) -len (f) -k+1) k = instr (1, tr, f, 1) loop hig
ยังมีข้อบกพร่องอยู่ในปัจจุบันและหน้าทดสอบล่าสุดคือ: http://www.realllydo.com/getimg.asp
หน้าการวิเคราะห์ปกติอยู่ที่: http://jorkin.realllydo.com/article.asp?id=380
หากคุณพบข้อผิดพลาดโปรดฝากข้อความในภายหลังขอบคุณ
1.31 การแก้ไข
src = ช่องว่างหลังจากไม่สามารถจับคู่ได้อย่างถูกต้อง ที่ตายตัว.
เกิดข้อผิดพลาดเมื่อ src = '' ว่างเปล่า ที่ตายตัว.
พบข้อผิดพลาด: มีเพียงหนึ่งเดียวเท่านั้นที่สามารถเก็บไว้ได้เมื่อมีหลายช่องว่างในเส้นทางภาพ ไม่ถูกแก้ไข
2.18 การแก้ไข
เมื่อเส้นทางภาพมีหลายช่องว่างสามารถเก็บบั๊กเพียงตัวเดียวได้ ที่ตายตัว.
-
'ฟังก์ชั่น: รับที่อยู่รูปภาพทั้งหมดและบันทึกลงในอาร์เรย์
'ที่มา: http://jorkin.realllydo.com/article.asp?id=448
ต้องใช้ฟังก์ชั่นการแทนที่: http://jorkin.realllydo.com/article.asp?id=406
ฟังก์ชั่น getimg (sstring)
Dim Sreallydo, Regex, Ireallydo
สลัว omatches, cmatch
'// กำหนดอาร์เรย์ที่ว่างเปล่า
IREALLYDO = -1
REDIM AREALLYDO (IREALLYDO)
ถ้า isnull (sstring) จากนั้น
getimg = areallydo
ฟังก์ชั่นออก
สิ้นสุดถ้า
'// รูปแบบรหัส html
'// นำตัวแบ่งบรรทัด <img แต่ละตัวเพื่ออำนวยความสะดวกในการเปลี่ยนเป็นประจำ
SREALLYDO = SSTRING
เมื่อเกิดข้อผิดพลาดต่อไป
SREALLYDO = แทนที่ (SREALLYDO, VBCR,)
SREALLYDO = แทนที่ (SREALLYDO, VBLF,)
SREALLYDO = แทนที่ (SREALLYDO, VBTAB,)
SREALLYDO = แทนที่ (SREALLYDO, <IMG, VBCRLF & <img, 1, -1, 1)
SREALLYDO = แทนที่ (SREALLYDO, />, />, 1, -1, 1)
SREALLYDO = replaceAll (SREALLYDO, =, =, true)
SREALLYDO = replaceAll (SREALLYDO,>,>, True)
SREALLYDO = แทนที่ (SREALLYDO,> <,> & VBCRLF & <)
SREALLYDO = TRIM (SREALLYDO)
ตั้งค่า regex = ใหม่ regexp
regex.ignorecase = true
regex.global = true
'// ลบ onclick, onload และสคริปต์อื่น ๆ
regex.pattern = /s [non.mher.+?=( [/tH
SREALLYDO = regex.replace (SREALLYDO,)
'// ใส่ที่อยู่ภาพ SRC โดยไม่มีเครื่องหมายคำพูด
regex.pattern = <img.*?/ssrc = ([^// '/s] [^//'/s>]*).*?>
SREALLYDO = regex.replace (SREALLYDO, <IMG SRC = $ 1 />)
'// จับคู่ที่อยู่ SRC เป็นประจำ
http://bizhi.cncms.com/
regex.pattern = <img.*?/ssrc = ([// ']) ([^//']+?)/1.*?>
ตั้งค่า omatches = regex.execute (srealllydo)
'// บันทึกที่อยู่รูปภาพลงในอาร์เรย์
สำหรับแต่ละ cmatch ใน omatches
IREALLYDO = IREALLYDO + 1
Redim Preserve Areallydo (Ireallydo)
areallydo (ireallydo) = regex.replace (cmatch.value, $ 2)
ต่อไป
getimg = areallydo
ฟังก์ชันสิ้นสุด
-
-
'การใช้งาน: หลายคนถามฉันว่าจะใช้มันอย่างไร แต่อันที่จริงแล้ววิธีการใช้อาร์เรย์
Scontent = HTML Code Field '// Scontent แสดงถึงรหัส HTML ปรากฎว่าถ้าคุณเขียนหรือทำไมคุณไม่เข้าใจว่ามันเป็นชุดบันทึก? - -
DIM AIMAGES: AIMAGES = GETIMG (SCONTENT) '// กำหนดอาร์เรย์และใช้เพื่อจัดเก็บที่อยู่ภาพที่วิเคราะห์ทั้งหมด
'แสดงรายการที่อยู่ของรูปภาพทั้งหมด:
สำหรับ i = 0 ถึง Ubound (Aimages)
Response.write (<b> สิ่งต่าง ๆ & i + 1 & ที่อยู่รูปภาพ: </b> & ameamages (i) & <br />)
ต่อไป
'แสดงรายการที่อยู่ภาพแรก:
ถ้า ubound (ameamages)> -1 แล้ว response.write (<p> <b> ที่อยู่ภาพแรก: </b> & ameamages (0) & </p>)
'แสดงรายการที่อยู่ภาพสุดท้าย:
ถ้า Ubound (Aimages)> -1 Response.Write (<p> <b> ที่อยู่ภาพสุดท้าย: </b> & ameamages (ubound (ameamages)) & </p>)
-
แบ่งปัน: วิธีแทนที่การแทนที่ใน ASP ในกรณีที่ไม่รู้สึกตัว ก่อนอื่นให้ดูที่คำอธิบายพารามิเตอร์โดยละเอียดของการแทนที่สตริง Return โดยที่จำนวน substrings ที่ระบุจะถูกแทนที่ด้วย substring อื่น ไวยากรณ์แทนที่ (นิพจน์, ค้นหา, แทนที่ด้วย [, เปรียบเทียบ [, count [, start]]]) ไวยากรณ์ของฟังก์ชั่นแทนที่มีพารามิเตอร์ต่อไปนี้: พารามิเตอร์คำอธิบายที่ต้องการนิพจน์ที่ต้องการ แพ็คเกจนิพจน์สตริง