วิธีการใช้การแยกเพื่อใช้งานอาร์เรย์ภายใต้ ASP
ตัวอย่างของฟังก์ชันแยกใน ASP
คุณเคยพบว่าคุณต้องการรับค่าบางอย่างในสตริง แต่คุณไม่สามารถเริ่มต้นได้หรือไม่? คุณคิดว่าวิธีการเขียนแยกในการอ่านหนังสือหรือตำราเรียนนั้นสับสน ... หากคุณมีคำถามนี้โปรดดูคำอธิบายของฉันเกี่ยวกับตัวอย่างด้านล่าง ฉันเชื่อว่าคุณจะมีความเข้าใจในสิ่งนี้
ก่อนอื่นให้ฉันแนะนำการใช้ฟังก์ชันแยก:
return value array = split ("string", "split")
สมมติว่าตัวแปร strurl มีค่า URL เช่น strurl = "ftp: // ชื่อผู้ใช้: รหัสผ่าน@เซิร์ฟเวอร์" ซึ่งเป็นแบบฟอร์ม URL เมื่อเราเข้าสู่ FTP ใน IE เราควรทำอย่างไรถ้าเราต้องการนำชื่อผู้ใช้และรหัสผ่านออกไป? แน่นอนว่ามีวิธีแก้ปัญหามากมายที่นี่เราจะแนะนำวิธีแก้ปัญหาโดยใช้ Split ก่อนอื่นเราพบตัวแยก เราพบว่าในสตริงนี้มีลำไส้ใหญ่ระหว่างชื่อผู้ใช้และรหัสผ่านที่แยกออกดังนั้นเราจึงใช้ลำไส้ใหญ่นี้เป็น "เซ็กเมนต์" ของฟังก์ชั่นแยกเพื่อแบ่งสตริงทั้งหมดและในที่สุดก็บรรลุวัตถุประสงค์ในการใช้ชื่อผู้ใช้และรหัสผ่าน รหัสมีดังนี้:
strurl = "ftp: // ชื่อผู้ใช้: รหัสผ่าน@เซิร์ฟเวอร์"
ARYRETURN = Split (Strurl, ":")
ด้วยวิธีนี้เราแยกสตริงด้วยลำไส้ใหญ่และผลลัพธ์หลังจากการแบ่งส่วนจะถูกบันทึกไว้ใน ARYRETURN (ARYRETURN เป็นอาร์เรย์)
มาดูผลลัพธ์สุดท้าย เนื่องจากฟังก์ชั่นแยกส่งคืนอาร์เรย์ในที่สุดเราจึงแสดงองค์ประกอบในอาร์เรย์ซึ่งเกี่ยวข้องกับฟังก์ชั่นบางอย่างที่เกี่ยวข้องกับอาร์เรย์: ISARRAY () ฟังก์ชั่นเพื่อตรวจสอบว่าอาร์เรย์เป็นอาร์เรย์ lbound () ใช้ตัวห้อยของอาร์เรย์และ ubound ()
Response.write ("เป็นค่าส่งคืนอาร์เรย์:" & isarray (aryreturn) & "<br>")
fori = lbound (aryreturn) toubound (aryreturn)
Response.write ("องค์ประกอบส่งคืนในค่าอาร์เรย์ [" & i & "]:" & ขวา (Aryreturn (i), Len (Aryreturn (i))-2) & "<br>")
ต่อไป
ผ่านรหัสข้างต้นเราจะเห็นว่าสตริงแบ่งออกเป็นสามส่วนคือ: "FTP", "// ชื่อผู้ใช้" และ "รหัสผ่าน@เซิร์ฟเวอร์" เราจำเป็นต้องดำเนินการเพิ่มเติมเมื่อเราต้องการรับชื่อผู้ใช้และรหัสผ่านดังนั้นฉันจะไม่พูดมากแค่ให้รหัส
รับรหัสชื่อผู้ใช้:
strusername = ขวา (ARYRETURN (1), LEN (ARYRETURN (1))-2)
ใช้รหัสรหัสผ่าน:
'เราใช้ฟังก์ชั่นแยกอีกครั้งเพื่อรับรหัสผ่าน แต่คราวนี้ตัวแยกคือ "@"
arytemp = split (aryreturn (2), "@")
strassword = arytemp (0)
'เราสามารถถอดเซิร์ฟเวอร์ออกได้
strserver = arytemp (1)
ตัวแยกอาจเป็นอักขระหรือสตริง ชอบ:
ARYRETURN = SPLIT ("ftp: // ชื่อผู้ใช้: รหัสผ่าน@เซิร์ฟเวอร์" // ")
สังเกต:
1. การพูดโดยทั่วไปตัวแปรไม่สามารถประกาศใน ASP ได้ เมื่อใช้ฟังก์ชั่นแยกหากคุณต้องการประกาศตัวแปรด้วยค่าส่งคืนคุณสามารถใช้ DIM เท่านั้นไม่ใช่ Redim แม้ว่ามันจะถูกส่งคืนเป็นอาร์เรย์ แต่ก็เป็นไปได้ที่จะใช้ Redim แต่เป็นไปไม่ได้ในระหว่างการใช้งานจริง ฉันไม่รู้ว่าเกิดอะไรขึ้น?