Ruby:
ค้นหาความยาวของสตริง
วิธีการ:
Ruby ทำให้มันเรียบง่ายด้วยเมธอด .length
:
greeting = "Hello, world!"
puts greeting.length
ผลลัพธ์:
13
หรือใช้ .size
ซึ่งทำงานเหมือนกัน:
greeting = "Hello, world!"
puts greeting.size
ผลลัพธ์:
13
ดำดิ่งลึก
ใน Ruby, .length
และ .size
สามารถใช้แทนกันได้เมื่อพูดถึงสตริง; พวกเขาให้คุณนับจำนวนอักขระ Ruby โดยประวัติศาสตร์ได้มุ่งเน้นทำให้โค้ดอ่านง่ายขึ้น, นั่นเป็นเหตุผลที่คุณมักจะพบว่ามีมากกว่าหนึ่งวิธีในการทำสิ่งเดียวกัน
ภายในนั้น, แต่ละอักขระในสตริงมีผลต่อขนาดการเก็บข้อมูล ดังนั้นการทราบจำนวนสามารถสำคัญสำหรับการเพิ่มประสิทธิภาพ โดยเฉพาะกับปริมาณข้อความมหาศาล
ในขณะที่ .length
และ .size
ให้คุณนับจำนวนอักขระ ในบางภาษาและในอดีต ความยาวของสตริงอาจหมายถึงขนาดไบต์ อย่างไรก็ตาม Ruby ที่มีการสนับสนุนอักขระหลายไบต์ผ่าน Unicode ไม่ได้เทียบขนาดไบต์โดยตรงกับความยาวสตริงเนื่องจากอักขระอาจใช้ไบต์มากกว่าหนึ่ง
ตัวเลือกอื่นเช่น .bytesize
บอกคุณว่าสตริงใช้ไบต์มากแค่ไหน และ .chars.count
ให้คุณจำนวนอักขระโดยการแปลงสตริงเป็นอาร์เรย์ของอักขระก่อน
นี่คือวิธีที่คุณสามารถใช้ .bytesize
และ .chars.count
:
greeting = "Hello, world!"
puts greeting.bytesize
puts greeting.chars.count
ผลลัพธ์:
13
13
ดูเพิ่มเติม
- เอกสารประกอบ Ruby เกี่ยวกับ Strings: https://ruby-doc.org/core/String.html
- บทความบทนำที่ดีเรื่อง Ruby Strings โดย RubyGuides: สำรวจเพิ่มเติมเกี่ยวกับสิ่งที่คุณสามารถทำกับสตริงนอกเหนือจากการวัดขนาดของพวกมัน
- ตกลงใจสำรวจการเข้ารหัสอักขระและวิธีการที่มีผลต่อการดำเนินการสตริงด้วย บทความนี้จาก Thoughtbot.