
เขียนโปรแกรมภาษา Python ตอนที่ 29 แบ่งข้อความใน String ด้วยเมธอด rsplit()
เมธอด rsplit()
เป็นเมธอดของสตริง ใช้สำหรับแบ่งสตริงโดยเราสามารถกำหนดได้ว่าจะให้ให้แบ่งด้วยอะไร เช่น แบ่งด้วยคอมม่า เป็นต้น แล้วคืนค่ากลับมาเป็น List โดยเริ่มจากด้านขวาของสตริง
รูปแบบการใช้งานเมธอด rsplit()
จะเป็นดังนี้
string.rsplit(separator, maxsplit)
separator
คือ อักขระที่ต้องการใช้เป็นตัวแบ่งสตริง (ไม่ระบุก็ได้) ค่าตั้งต้นคือ whitespacemaxsplit
คือ ตัวเลขระบุว่าจะแบ่งสตริงกี่ครั้ง (ไม่ระบุก็ได้) ถ้าไม่ระบุ ค่าตั้งต้นคือ -1 หมายถึง แบ่งมากที่สุดเท่าที่จะทำได้ แต่ถ้าระบุ ก็จะได้ข้อมูลแบบ List ที่มีจำนวนอีลิเมนต์เท่ากับ maxsplit + 1
ตัวอย่างการใช้งานเมธอด rsplit()
a = "Python, Swift, Kotlin, Java, C#, VB.NET, F#" print(a.rsplit(", "))
จากโค้ดตัวอย่าง เราแบ่งข้อมูลด้วยเครื่องหมาย คอมม่า ตามด้วยช่องว่าง “, ” โดยไม่ได้ระบุ maxsplit ทำให้ได้ผลลัพธ์เป็น List ที่มีอีลิเมนต์จำนวน 7 อีลิเมนต์ (แบ่งมากที่สุดเท่าที่จะแบ่งได้ ด้วยอักขระที่กำหนด)
[‘Python’, ‘Swift’, ‘Kotlin’, ‘Java’, ‘C#’, ‘VB.NET’, ‘F#’]
การใช้งานเมธอด rsplit() แบบระบุ maxsplit
a = "Python, Swift, Kotlin, Java, C#, VB.NET, F#" print(a.rsplit(", ", 3)) # ['Python, Swift, Kotlin, Java', 'C#', 'VB.NET', 'F#']
จากโค้ดตัวอย่าง เราให้แบ่งสตริงด้วยเครื่องหมายคอมม่า ตามด้วยช่องว่าง “, ” เหมือนตัวอย่างก่อนหน้า แต่เพิ่มเติมคือกำหนด maxsplit
เป็น 3 ทำให้ได้ผลลัพธ์เป็น List ที่มีอีลิเมนต์เท่ากับ maxsplit + 1
(ในที่นี้คือ 3 + 1) นั่นคือ 4 อีลิเมนต์ (เริ่มจากด้านขวา) ผลลัพธ์จึงเป็นดังนี้ [‘Python, Swift, Kotlin, Java’, ‘C#’, ‘VB.NET’, ‘F#’] ดูภาพประกอบ
จากรูป ให้สังเกตว่า แต่ละอีลิเมนต์จะอยู่ภายในเครื่องหมาย ' '