国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

Lua函數(shù)與字符串處理簡明總結(jié)

2024-07-21 23:04:14
字體:
供稿:網(wǎng)友

函數(shù)的定義是以function關(guān)鍵字開始的,后面函數(shù)的名稱,然后是要傳遞給函數(shù)的參數(shù),如果沒有參數(shù)傳給函數(shù),仍然需要用()來表示一個空的參數(shù)列表,以end關(guān)鍵字結(jié)尾。

 

復(fù)制代碼 代碼如下:

function 函數(shù)名()
 ...
 ...
 ...
end

 

1. 單一參數(shù)

 

復(fù)制代碼 代碼如下:

function F_1(var)
 print("My website is: "  var)
end

 

參數(shù)var傳遞給了函數(shù),并在函數(shù)中使用,同時,函數(shù)中的參數(shù)是局部變量,在函數(shù)調(diào)用結(jié)束后被收回。

2. 多個參數(shù)

 

復(fù)制代碼 代碼如下:

function F_2(var1, var2)
 print("My website is: "  var1)
 print("QQ群: " var2)
end

 

傳遞多個參數(shù),用逗號隔開。

3. 可變參數(shù)

Lua還可以定義不定長的參數(shù)列表,使用(…)來代替參數(shù)列表。Lua會創(chuàng)建一個局部名稱為arg的table,來保存函數(shù)調(diào)用時所有傳遞的參數(shù),以及參數(shù)個數(shù),通過arg.n來獲取。

4. 返回值

函數(shù)使用return關(guān)鍵字并跟上變量名來返回結(jié)果。返回多個結(jié)果,用逗號隔開。

5. 字符處理函數(shù)string

Lua對字符處理能力很強大,具有可擴展的模式匹配功能和許多使用的字符處理函數(shù)。

5.1 string.len(string)

該函數(shù)告訴字符數(shù)。

 

復(fù)制代碼 代碼如下:

> s = 'm.survivalescaperooms.com'
> print(string.len(s))
13

 

5.2 string.sub(string,start,end)

返回指定字符串的子串。start參數(shù)指定起始位置,end指定結(jié)束位置。

 

復(fù)制代碼 代碼如下:

> s = 'm.survivalescaperooms.com'
> ns = string.sub(s,3,6)
> print(ns)
w.tt

 

也可以指定start參數(shù)為負數(shù),那么起始位置將從字符串的最后開始計算。
end參數(shù)可以省略,將返回從start到字符串末尾的子串。

5.3 string.format()

格式化輸出指定字符串。

5.4 string.find(source_str,find_str)

該函數(shù)在source_str中查詢第一個符合find_str字符的位置。如果找到了則返回它的開始和結(jié)束位置,沒有找到返回nil

 

復(fù)制代碼 代碼如下:

> s="My website: m.survivalescaperooms.com"
> print(string.find(s,"ttlsa"))
17 21
> print(string.find(s,"w"))
4 4
> print(string.find(s,"xx"))
nil

 

5.5 string.gsub(source_str, pattern, replacement_str,[num])

string.gsub函數(shù)返回一個字符串,source_str字符串中匹配pattern的字符都將會被替換成replacement_str。

 

復(fù)制代碼 代碼如下:

> s="My website: m.survivalescaperooms.com"
> print(string.gsub(s,'ttlsa','TTLSA'))
My website: m.survivalescaperooms.com 1

 

可以在函數(shù)的最后加一個可選參數(shù),用來指定被替換的次數(shù)。

 

復(fù)制代碼 代碼如下:

> print(string.gsub(s,'w','XXXXXX'))
My XXXXXXebsite: XXXXXXXXXXXXXXXXXX.vevb.com 4
> print(string.gsub(s,'w','XXXXXX',2))
My XXXXXXebsite: XXXXXXww.vevb.com 2

 

5.6 string.gfind(source_str,pattern)

遍歷一個字符串,一旦匹配到指定的字符串就返回該子串。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 方正县| 遂宁市| 蓬莱市| 林芝县| 诏安县| 高清| 林甸县| 抚宁县| 长沙市| 原平市| 博爱县| 化州市| 井研县| 宜君县| 白水县| 浪卡子县| 武山县| 东台市| 靖宇县| 隆子县| 宁阳县| 历史| 松滋市| 桦南县| 云南省| 苏尼特左旗| 台州市| 武川县| 桐城市| 瑞昌市| 北安市| 陇西县| 湾仔区| 太原市| 霍州市| 塔城市| 淮安市| 临沭县| 宜昌市| 中山市| 中江县|