ASP [# 8] ฟังก์ชั่นที่ใช้เกี่ยวกับการตัดคำ ฟังก์ชั่นที่ใช้เกี่ยวกับการค้นหาคำ ฟังก์ชั่นที่ใช้เกี่ยวกับการสลับตำแหน่งอักษร ฟังก์ชั่นที่ใช้เกี่ยวกับการแทนที่คำ
ฟังก์ชั่นที่ใช้เกี่ยวกับการตัดคำ Function Left เป็นฟังก์ชั่นที่ใช้สำหรับตัดคำใน String จากทางซ้ายตามจำนวนที่ต้องการมีรูปแบบดังนี้ รูปแบบ Left(string, lenght) stringหมายถึงข้อความที่เราจะตัด lenghtหมายถึงจำนวนตัวอักษรที่ต้องการ A=“THAILAND” B=Left(A,4)
Function Right A=“THAILAND” B=Right(A,4) เป็นฟังก์ชั่นที่ใช้สำหรับตัดคำใน String จากทางขวาตามจำนวนที่ต้องการมีรูปแบบดังนี้ รูปแบบ Right(string, lenght) stringหมายถึงข้อความที่เราจะตัด lenghtหมายถึงจำนวนตัวอักษรที่ต้องการ A=“THAILAND” B=Right(A,4)
Function Mid A=“THAILAND” B=Mid(A,2,3) เป็นฟังก์ชั่นที่ใช้สำหรับตัดคำใน String โดยระบุตำแหน่งเริ่มต้นและจำนวนที่ต้องการมีรูปแบบดังนี้ รูปแบบ Mid(string, start[, lenght]) stringหมายถึงข้อความที่เราจะตัด startหมายถึงตำแหน่งเริ่มต้นของตัวอักษรที่ต้องการ lenghtหมายถึงจำนวนตัวอักษรที่ต้องการ A=“THAILAND” B=Mid(A,2,3)
ตัวอย่างการใช้งาน Function Left, Right, Mid <% Dim AnyString Dim MyStr1 Dim MyStr2 Dim MyStr3 AnyString="ASPThai.Net" MyStr1=Left(AnyString, 1) MyStr2=Right(AnyString,3) MyStr3=Mid(AnyString, 4, 10) Response.Write(MyStr1&"<br>") Response.Write(MyStr2&"<br>") Response.Write(MyStr3&"<br>") %> ผลลัพธ์ที่ได้ A Net Thai.Net
ฟังก์ชั่นที่ใช้เกี่ยวกับการค้นหาคำ Function InStr เป็นฟังก์ชั่นที่ใช้สำหรับการค้นหาตำแหน่งของคำที่กำหนดภายใน String มีรูปแบบดังนี้ รูปแบบ InStr([start, ]string1, string2[, compare]) Start หมายถึงตำแหน่งที่เริ่มต้นค้นหา ถ้าไม่ระบุจะถือว่าเป็นตำแหน่งแรกสุด String1 หมายถึงข้อความที่จะให้ค้น String2 หมายถึงคำที่ต้องการค้นหา Compare หมายถึงค่าคงที่ ที่ใช้ระบุประเภทของการเปรียบเทียบ 0 : vbBinaryCompare เป็นการเปรียบเทียบแบบ Binary 1 : vbTextCompare เป็นการเปรียบเทียบแบบ Text 2 : vbDatabaseCompare เป็นการเปรียบเทียบข้อมูลที่จัดเก็บไว้ในฐานข้อมูล ถ้าไม่กำหนดจะถือให้เป็น 1
ตัวอย่างการใช้งาน Function InStr <% Dim AnyString Dim FindString Dim MyStr1 Dim MyStr2 Dim MyStr3 Dim MyStr4 AnyString="ASPThai.Net Site for ASP" FindString="t" MyStr1=InStr(12, AnyString,FindString, 1) MyStr2=InStr(1, AnyString,FindString, 0) MyStr3=InStr(AnyString,FindString) MyStr4=InStr(1, AnyString,"D") Response.Write(MyStr1&"<br>") Response.Write(MyStr2&"<br>") Response.Write(MyStr3&"<br>") Response.Write(MyStr4&"<br>") %> ผลลัพธ์ที่ได้ 15 ในข้อความมี "t" อยู่ 2 ตำแหน่งที่ 11 และ 15 ดังนั้นจึงได้ตำหน่งที่ 15 เพราะเริ่มค้นหาจากตำแหน่งที่12 11 ในข้อความมี "t" อยู่ 2 ตำแหน่งที่ 11 และ 15 ดังนั้นจึงได้ตำหน่งที่ 11 เพราะเริ่มค้นหาจากตำแหน่งที่1 11 ในข้อความมี "t" อยู่ 2 ตำแหน่งที่ 11 และ 15 ดังนั้นจึงได้ตำหน่งที่ 11 เพราะเริ่มค้นหาจากตำแหน่งที่1 0 ได้เป็น 0 เพราะไม่พบคำที่ค้นหา
Function Len A=“THAILAND” B=Len(A) เป็นฟังก์ชั่นที่ใช้สำหรับการนับจำนวนของ String มีรูปแบบดังนี้ รูปแบบ Len(string) stringหมายถึงข้อความที่ต้องการจะนับ A=“THAILAND” B=Len(A)
การประยุกต์ใช้งาน เราสามารถนำการค้นหาคำนี้ไปใช้จับผิดการกรอกรูปแบบ Email ได้ซึ่งมาพิจารณารุปแบบ Email กัน 1.เครื่องหมาย @ อยู่อย่างน้อยสุดคือตำแหน่งที่ 2 (ถ้านับตัวแรกเป็นตำแหน่งที่1 )เพราะคงไม่มี Email ที่ไหนขึ้นด้วย @ 2.เครื่องหมาย . อยู่อย่างน้อยสุดก็เป็นตำแหน่งที่ 4 เช่น d@d.net ซึ่งคงไม่มีใครมี Email d@.net แน่นอน 3.ความยาวหรือจำนวนรวมของตัวอักษร อย่างน้อยก็ไม่น่าจะต่ำกว่า 5 แน่ เมื่อทราบหลักการเราก็มาใช้คำสั่ง InStr เพื่อเช็ครูปแบบ Email ดีกว่า If InStr(strEmail,"@") < 2 or InStr(strEmail,".") < 4 or len(strEmail) < 5 Then
ฟังก์ชั่นที่ใช้เกี่ยวกับการสลับตำแหน่งอักษรจากหลังมาหน้า Function StrReverse เป็นฟังก์ชั่นที่ใช้สำหรับสลับตำแหน่งของตัวอักษร จากหลังมาหน้า มีรูปแบบดังนี้ รูปแบบ StrReverse(string) stringหมายถึงข้อความที่เราต้องการจะสลับตำแหน่ง ตัวอย่างการใช้งาน Function StrReverse <% Dim AnyString Dim MyStr AnyString="ASPThai.Net Site for ASP" MyStr=StrReverse(AnyString) Response.Write(MyStr&"<br>") %> ผลลัพธ์ที่ได้ PSA rof etiS teN.iahTPSA
ฟังก์ชั่นที่ใช้เกี่ยวกับการแทนที่คำ Function Replace เป็นฟังก์ชั่นที่ใช้สำหรับการแทนที่คำใน String โดยจะทำการค้นหาคำที่ต้องการ แล้วแทนที่ด้วยคำที่กำหนด โดยสามารถระบุตำแหน่งเริ่มต้นของตัวอักษร และจำนวนครั้งที่ต้องการให้แทนที่ได้ มีรูปแบบดังนี้ รูปแบบ Replace(string, find, replace[, start[, count[, compare]]]) String หมายถึงข้อความที่ต้องการแทนที่ Find หมายถึงคำที่ต้องการเปลี่ยน Replace หมายถึงคำที่ต้องการแทนที่ Start หมายถึงตำแหน่งเริ่มต้นที่ต้องการแทนที่ Count หมายถึงจำนวนครั้งที่ต้องการแทนที่ ถ้าต้องการแทนที่ไม่จำกัดครั้งให้ใส่ -1 Compare หมายถึงค่าคงที่ ที่ใช้ระบุประเภทของการเปรียบเทียบ 0 : vbBinaryCompare เป็นการเปรียบเทียบแบบ Binary 1 : vbTextCompare เป็นการเปรียบเทียบแบบ Text 2 : vbDatabaseCompare เป็นการเปรียบเทียบข้อมูลที่จัดเก็บไว้ในฐานข้อมูล ถ้าไม่กำหนดจะถือให้เป็น 1
ตัวอย่างการใช้งาน Function Replace <% Dim AnyString Dim FindString Dim ReplaceString Dim MyStr1 Dim MyStr2 Dim MyStr3 Dim MyStr4 AnyString="XXXTTTXXXTTTXXXTTTXXXTTT" FindString="TTT" 'คำที่จะค้นหา ReplaceString="XXX" 'คำที่จะเอาไปแทนที่คำที่ค้นหา MyStr1=Replace(AnyString, FindString, ReplaceString, 1, 1, 1) MyStr2=Replace(AnyString, FindString, ReplaceString, 1, 2, 1) MyStr3=Replace(AnyString, FindString, ReplaceString, 1, 3, 1) MyStr4=Replace(AnyString, FindString, ReplaceString, 1, -1, 1) Response.Write(MyStr1&"<br>") Response.Write(MyStr2&"<br>") Response.Write(MyStr3&"<br>") Response.Write(MyStr4&"<br>") %> ผลลัพธ์ที่ได้ XXXXXXXXXTTTXXXTTTXXXTTT XXXXXXXXXXXXXXXTTTXXXTTT XXXXXXXXXXXXXXXXXXXXXTTT XXXXXXXXXXXXXXXXXXXXXXXX
แบบฝึกหัด [ตัดคำหยาบ] เก็บคำหยาบไว้ในอะเรย์ โคตร ว่ะ แม่ง โว้ย Name : สมชาย Email : Som-hotmail.com Detail : นายโคตรหล่อเลยว่ะ Name : สมชาย Email : ไม่ถูกต้อง Submit Detail : นาย****หล่อเลย*** Form8.asp Result8.asp