函數的定義是以function關鍵字開始的,后面函數的名稱,然后是要傳遞給函數的參數,如果沒有參數傳給函數,仍然需要用()來表示一個空的參數列表,以end關鍵字結尾。
1. 單一參數
參數var傳遞給了函數,并在函數中使用,同時,函數中的參數是局部變量,在函數調用結束后被收回。
2. 多個參數
傳遞多個參數,用逗號隔開。
3. 可變參數
Lua還可以定義不定長的參數列表,使用(…)來代替參數列表。Lua會創建一個局部名稱為arg的table,來保存函數調用時所有傳遞的參數,以及參數個數,通過arg.n來獲取。
4. 返回值
函數使用return關鍵字并跟上變量名來返回結果。返回多個結果,用逗號隔開。
5. 字符處理函數string
Lua對字符處理能力很強大,具有可擴展的模式匹配功能和許多使用的字符處理函數。
5.1 string.len(string)
該函數告訴字符數。
5.2 string.sub(string,start,end)
返回指定字符串的子串。start參數指定起始位置,end指定結束位置。
也可以指定start參數為負數,那么起始位置將從字符串的最后開始計算。
end參數可以省略,將返回從start到字符串末尾的子串。
5.3 string.format()
格式化輸出指定字符串。
5.4 string.find(source_str,find_str)
該函數在source_str中查詢第一個符合find_str字符的位置。如果找到了則返回它的開始和結束位置,沒有找到返回nil
5.5 string.gsub(source_str, pattern, replacement_str,[num])
string.gsub函數返回一個字符串,source_str字符串中匹配pattern的字符都將會被替換成replacement_str。
可以在函數的最后加一個可選參數,用來指定被替換的次數。
5.6 string.gfind(source_str,pattern)
遍歷一個字符串,一旦匹配到指定的字符串就返回該子串。
新聞熱點
疑難解答