Latest web development tutorials

สตริง Lua

สตริงหรือสตริง (String) เป็นสายอักขระประกอบด้วยตัวเลขตัวอักษรขีดดังกล่าว

Lua สตริงภาษาสามารถแสดงโดยใช้วิธีการต่อไปนี้:

  • สายเดียวของตัวละครระหว่างเครื่องหมายอัญประกาศ
  • สตริงของตัวละครระหว่างคำพูดคู่
  • [[พร้อมส่ง]] ระหว่างสายอักขระ

ตัวอย่างของสตริงดังกล่าวข้างต้นในสามวิธีดังต่อไปนี้:

string1 = "Lua"
print("\"字符串 1 是\"",string1)
string2 = 'w3cschool.cc'
print("字符串 2 是",string2)

string3 = [["Lua 教程"]]
print("字符串 3 是",string3)

เอาท์พุทเป็นรหัสดังกล่าวข้างต้นจะถูกดำเนินการ:

"字符串 1 是"	Lua
字符串 2 是	w3cschool.cc
字符串 3 是	"Lua 教程"

หนีตัวอักษรหมายถึงไม่สามารถแสดงได้โดยตรงเช่นปุ่มย้อนกลับ, ปุ่ม Enter และอื่น ๆ ในฐานะที่เป็นเครื่องหมายอัญประกาศสามารถใช้ในการแปลงสตริง "\". "

ทุกตัวหนีและความหมายที่สอดคล้องกัน:

ตัวหนี
ความหมาย
ค่า ASCII (ทศนิยม)
\ a
เบลล์ (BEL)
007
\ B
Backspace (BS) ตำแหน่งปัจจุบันไปก่อนหน้านี้หนึ่ง
008
\ F
ฟีดในแบบฟอร์ม (FF) ตำแหน่งปัจจุบันไปยังจุดเริ่มต้นของหน้าถัดไป
012
\ n
อาหารเส้น (LF) ตำแหน่งปัจจุบันไปยังจุดเริ่มต้นของบรรทัดถัดไป
010
\ r
กลับรถ (CR) ตำแหน่งปัจจุบันไปยังจุดเริ่มต้นของบรรทัด
013
\ t
แท็บแนวนอน (HT) (ข้ามไปยังตำแหน่งที่แท็บถัดไป)
009
\ V
แท็บแนวตั้ง (VT)
011
\\
แทนตัวอักษรทับขวา '\'
092
\ '
ในนามของคำพูดเดียว (วรรค) ตัวละคร
039
\ "
เพราะมันหมายถึงตัวละครที่อ้างดับเบิล
034
\ 0
อักขระ null (NULL)
000
\ Ddd
จำนวนตัวอักษรใด ๆ 1-3 ฐานแปดเป็นตัวแทน
สามแปด
\ Xhh
1-2 ตัวอักษรใด ๆ หมายถึงเลขฐานสิบหก
สองเลขฐานสิบหก

การจัดการสตริง

Lua ให้หลายวิธีที่จะสนับสนุนการดำเนินงานของสตริง:

เลขที่ วิธีการและวัตถุประสงค์
1 string.upper (อาร์กิวเมนต์):
สตริงทุกตัวอักษรพิมพ์ใหญ่
2 string.lower (อาร์กิวเมนต์):
สตริงทุกตัวพิมพ์เล็ก
3 string.gsub (mainString, findString, replaceString, NUM)
ในสตริงทดแทน mainString ต้องการแทนที่สตริง findString สำหรับตัวอักษรที่ถูกแทนที่ replaceString เพื่อแทนที่ตัวอักษร NUM แทนที่เกิด (สามารถปฏิเสธแล้วแทนที่ทั้งหมด) เช่น:
> string.gsub("aaaa","a","z",3);
zzza	3
4 string.strfind (Str, substr [init , [จบ]])
ค้นหาเนื้อหาที่เฉพาะเจาะจง (พารามิเตอร์ที่สามสำหรับดัชนี) ที่สตริงเป้าหมายที่ระบุและส่งกลับทำเลที่ตั้ง ไม่อยู่ก็จะส่งกลับศูนย์
> string.find("Hello Lua user", "Lua", 1) 
7	9
5 string.reverse (หาเรื่อง)
ที่จะย้อนกลับสตริง
> string.reverse("Lua")
auL
6 string.format ( ... )
ส่งกลับ printf เหมือนสตริงรูปแบบ
> string.format("the value is:%d",4)
the value is:4
7 string.char (หาเรื่อง) และ string.byte (หาเรื่อง [int])
ตัวเลขจำนวนเต็มถ่านจะกลายเป็นตัวอักษรและการเชื่อมต่อตัวละครไบต์แปลงเป็นค่าจำนวนเต็ม (คุณสามารถระบุตัวอักษรตัวอักษรตัวแรกโดยค่าเริ่มต้น)
> string.char(97,98,99,100)
abcd
> string.byte("ABCD",4)
68
> string.byte("ABCD")
65
>
8 string.len (หาเรื่อง)
ความยาวสาย Compute
string.len("abc")
3
9 string.rep (String, N))
ส่งคืนสำเนา n ของสตริงสตริง
> string.rep("abcd",2)
abcdabcd
10 ..
เชื่อมโยงสองสาย
> print("www.w3cschool".."cc")
www.w3cschoolcc

แปลงกรณีสตริง

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงวิธีการแปลงกรณี string:

string1 = "Lua";
print(string.upper(string1))
print(string.lower(string1))

รหัสข้างต้นจะถูกดำเนินการเป็นผลมาจาก:

LUA
lua

ค้นหาสตริงและย้อนกลับ

ตัวอย่างต่อไปนี้แสดงให้เห็นว่าสตริงเพื่อค้นหาย้อนกลับและการดำเนินงาน:

string = "Lua Tutorial"
-- 查找字符串
print(string.find(string,"Tutorial"))
reversedString = string.reverse(string)
print("新字符串为",reversedString)

รหัสข้างต้นจะถูกดำเนินการเป็นผลมาจาก:

5	12
新字符串为	lairotuT auL

การจัดรูปแบบสตริง

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงวิธีการจัดรูปแบบสตริง:

string1 = "Lua"
string2 = "Tutorial"
number1 = 10
number2 = 20
-- 基本字符串格式化
print(string.format("基本格式化 %s %s",string1,string2))
-- 日期格式化
date = 2; month = 1; year = 2014
print(string.format("日期格式化 %02d/%02d/%03d", date, month, year))
-- 十进制格式化
print(string.format("%.4f",1/3))

รหัสข้างต้นจะถูกดำเนินการเป็นผลมาจาก:

基本格式化 Lua Tutorial
日期格式化 02/01/2014
0.3333

ตัวอักษรและการแปลงจำนวนเต็ม

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงตัวอักษรและจำนวนเต็มแปลง:

-- 字符转换
-- 转换第一个字符
print(string.byte("Lua"))
-- 转换第三个字符
print(string.byte("Lua",3))
-- 转换末尾第一个字符
print(string.byte("Lua",-1))
-- 第二个字符
print(string.byte("Lua",2))
-- 转换末尾第二个字符
print(string.byte("Lua",-2))

-- 整数 ASCII 码转换为字符
print(string.char(97))

รหัสข้างต้นจะถูกดำเนินการเป็นผลมาจาก:

76
97
97
117
117
a

ฟังก์ชั่นที่ใช้กันทั่วไปอื่น ๆ

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงการดำเนินงานของสายอื่น ๆ เช่นการคำนวณความยาวสตริง, สตริง, การจำลองแบบสตริง:

string1 = "www."
string2 = "w3cschool"
string3 = ".cc"
-- 使用 .. 进行字符串连接
print("连接字符串",string1..string2..string3)

-- 字符串长度
print("字符串长度 ",string.len(string2))

-- 字符串复制 2 次
repeatedString = string.rep(string2,2)
print(repeatedString)

รหัสข้างต้นจะถูกดำเนินการเป็นผลมาจาก:

连接字符串	www.w3cschool.cc
字符串长度 	9
w3cschoolw3cschool