มารั่วกันต่อ#3


Strings

กำหนดค่าประเภทข้อความได้สามแบบดังนี้
a = "hello"
b = 'hello'
print(a==b)   -----> true

c = [[ ข้อความยาวๆ
หลายบรรทัด
  ...
  ...
]]
print(c)      --[[ ---> ข้อความยาวๆ
                       หลายบรรทัด
                         ...
                         ...
              --]]
เหมือนในภาษาอื่นๆ ใช้เครื่องหมาย \ ในการแสดงอักขระพิเศษต่างๆ เช่น \n ในการขึ้นบรรทัดใหม่ จากตัวอย่างที่แล้วค่าตัวแปร c สามารถกำหนดค่าในรูปแบบเดียวกับ a หรือ b ได้โดยใช้ร่วมกับ \n
d = " ข้อความยาวๆ\nหลายบรรทัด\n ...\n ...\n"
การแสดงเครื่องหมาย ' หรือ " ก็ใช้ \' กับ \" เช่นกันหรือใช้เครื่องหมายกำหนดค่าสลับกับเครื่องหมายที่ต้องการแสดง
e = "แสดงเครื่องหมาย ' และ \" ในข้อความ"
f = 'แสดงเครื่องหมาย \' และ " ในข้อความ'
g = [[แสดงเครื่องหมาย ' และ " ในข้อความ]]
print(e==f)                 -----> true
การต่อ string ใช้ .. ระหว่างสองข้อความถ้าใช้กับตัวเลขก็จะแปลงเป็นข้อความด้วย
h = a .. ' ' .. b
print(h)                    -----> hello hello
print("number "..10)        -----> number 10
print(2 ..10)               -----> 210

--.ในทางกลับกันข้อความที่เป็นตัวเลขก็สามารถแปลงเป็นตัวเลขเมื่อใช้เครื่องหมายทางคณิตศาสตร์ด้วย
print("2"+"10")             -----> 12
การนับจำนวนอักขระทำได้หลายแบบ
print(#a, #c)               -----> 5      82
--แบบนี้เหมือนกับ string คือ table ที่มีสมาชิกเป็นอักขระและมีดัชนีเป็นเลขลำดับ

print(a:len(), c:len())     -----> 5      82
--แบบนี้เหมือนกับ string คือ object เป็นการเรียก method ชื่อ len() ของ string object
print(a.len(a), a.len(c), c.len(c))   -----> 5      82      82
--การเรียกแบบ function โดยที่ a และ c เป็น object ที่สืบทอดของ string

print(string.len(c))        -----> 82
--เป็นการเรียกใช้ library มาตรฐานของ Lua
คำสั่งเกี่ยวกับ string อื่นๆ ใน library มาตรฐานสามารถเรียกใช้ได้ตามวิธีข้างต้นคือแบบเป็น function หรือแบบเป็น method ของ object หรือเรียกใช้ library โดยตรงก็ได้
ว่าจะต่อเรื่อง table แต่เดี๋ยวจะยาวขอแยกเป็นอีกตอนแล้วกันครับ

ตอนที่ 1 มารั่วกันเถอะ
ตอนที่ 2 มารั่วกันต่อ#2
ตอนที่ 4 มารั่วกันต่อ#4 

หัดเขียนโปรแกรมแบบบ้านๆ ตอนที่ 3 พื้นฐานภาษา Lua

ความคิดเห็น