Lua:
การดึงข้อมูลย่อยออกมา
วิธีการ:
ใน Lua, ใช้ฟังก์ชัน string.sub
:
local text = "Hello, Lua!"
-- แยก 'Hello'
print(string.sub(text, 1, 5)) -- ผลลัพธ์: Hello
-- ดึง 'Lua'
print(string.sub(text, 8, 11)) -- ผลลัพธ์: Lua
หรือใช้ดัชนีเชิงลบเพื่อดึงตัวอักษรสุดท้าย:
-- ดึง 'Lua!' จากท้าย
print(string.sub(text, -4)) -- ผลลัพธ์: Lua!
ใช้รูปแบบการค้นหาเพื่อเจอและดึงข้อมูล:
local phrase = "The quick brown fox jumps"
-- ค้นหาและดึง 'quick'
print(phrase:match("(%a+) quick")) -- ผลลัพธ์: The
ลงลึก
ในระยะเริ่มแรกของการเขียนโปรแกรม การจัดการสตริงมักเป็นไปอย่างลำบากและต้องใช้ลูปและเงื่อนไข ฟังก์ชัน string.sub
ของ Lua เป็นส่วนหนึ่งของไลบรารีสตริงที่กว้างขวางขึ้น ทำให้การจัดการสตริงเป็นเรื่องง่าย string.sub
เป็นทางเลือกแทนการจับคู่รูปแบบด้วย string.match
ซึ่งมีความสามารถมากขึ้นแต่อาจเกินความจำเป็นสำหรับงานง่ายๆ
ฟังก์ชัน string.sub
และการจับคู่รูปแบบนั้นมีพื้นฐานมาจากฟังก์ชันภาษา C เนื่องจากลักษณะของ Lua ที่เกี่ยวข้องกับภาษา C คุณจะไม่พบไลบรารีมาตรฐานขนาดใหญ่ใน Lua สำหรับสตริงเมื่อเทียบกับภาษาเช่น Python; มันให้ความสำคัญกับความเรียบง่ายและประสิทธิภาพ โปรดจำไว้ว่า ดัชนีใน Lua เริ่มที่ 1 ไม่ใช่ 0
ดูเพิ่มเติม
- Lua 5.4 คู่มืออ้างอิงสำหรับสตริง: www.lua.org/manual/5.4/manual.html#6.4
- ‘Programming in Lua’ (ฉบับที่ 4) โดยเฉพาะบทเกี่ยวกับสตริง: www.lua.org/pil/contents.html