Python แบ่งข้อความในสตริงด้วยเมธอด rsplit()

Python แบ่งข้อความในสตริงด้วยเมธอด rsplit()

Python แบ่งข้อความในสตริงด้วยเมธอด rsplit()

เมธอด rsplit() เป็นเมธอดของสตริง ใช้สำหรับแบ่งสตริงโดยเราสามารถกำหนดได้ว่าจะให้ให้แบ่งด้วยอะไร เช่น แบ่งด้วยคอมม่า เป็นต้น แล้วคืนค่ากลับมาเป็น List โดยเริ่มจากด้านขวาของสตริง

รูปแบบการใช้งานเมธอด rsplit() จะเป็นดังนี้

string.rsplit(separator, maxsplit)

  • separator คือ อักขระที่ต้องการใช้เป็นตัวแบ่งสตริง (ไม่ระบุก็ได้) ค่าตั้งต้นคือ whitespace
  • maxsplit คือ ตัวเลขระบุว่าจะแบ่งสตริงกี่ครั้ง (ไม่ระบุก็ได้) ถ้าไม่ระบุ ค่าตั้งต้นคือ -1 หมายถึง แบ่งมากที่สุดเท่าที่จะทำได้ แต่ถ้าระบุ ก็จะได้ข้อมูลแบบ List ที่มีจำนวนอีลิเมนต์เท่ากับ maxsplit + 1

ตัวอย่างการใช้งานเมธอด rsplit()

a = "Python, Swift, Kotlin, Java, C#, VB.NET, F#"

print(a.rsplit(", "))
# ['Python', 'Swift', 'Kotlin', 'Java', 'C#', 'VB.NET', 'F#']

จากโค้ดตัวอย่าง เราแบ่งข้อมูลด้วยเครื่องหมาย คอมม่า ตามด้วยช่องว่าง “, ” โดยไม่ได้ระบุ maxsplit ทำให้ได้ผลลัพธ์เป็น List ที่มีอีลิเมนต์จำนวน 7 อีลิเมนต์ (แบ่งมากที่สุดเท่าที่จะแบ่งได้ ด้วยอักขระที่กำหนด)

การใช้งานเมธอด 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#’] ดูภาพประกอบ

จากรูป ให้สังเกตว่า แต่ละอีลิเมนต์จะอยู่ภายในเครื่องหมาย ‘ ‘