Lua-字符串、math

2019-05-29  本文已影响0人  祝你万事顺利

字符串查找
返回相匹配的起始位置和结束位置

local str = "1111234asdfzxa";
local a,b = string.find(str,"1234");
print(a,b);

字符串变大写

a = string.upper( str );
print(a);

字符串截取sub方法

string.sub(s,i,j)
函数截取字符串s的从第i个字符到第j个字符之间的串.Lua中,字符串的第一个字符索引从1开始.你也可以使用负索引,负索引从字符串的结尾向前计数:-1指向最后一个字符,-2指向倒数第二个,以此类推.

方法可变参数

function average(...)
    result = 0;
    tb4 = {...}
    for i = 1, #tb4 do
        result = result + tb4[i];
    end
    print(result);
end

average(1,2,3,4);

ipairs与pairs
ipairs遇到nil跳出,
pairs遇到nil跳过,继续往后执行.pairs如果遇到有键值的会无序遍历,标准table会有序遍历。

function average(...)
    result = 0;
    tb4 = {...}
    table.insert(tb4,"str");
    for i,v in ipairs(tb4) do
        print(v);
    end
    for k, v in pairs(tb4) do
        print(v);
    end
end

average(1,2,3,nil,4);

输出结果:

1 1
2 2
3 3
1 1
2 2
3 3
5 4
6 str

math随机函数

math.randomseed( os.time() );
for i = 1, 10 do
    print(math.random(1,100));
end
print(math.abs( -15 ));
print(math.deg( 3.1415926 ));

print(math.max( 16,22,-100));
print(math.sqrt( 4 ));
print(math.tan( 45 ));
a = "156"
print(math.tointeger(a));
b= 156;
print(math.type( a ));
print(math.type( b ));

输出结果

15
179.99999692953
22
2.0
1.6197751905439
156
nil
integer

拼接字符串

table2 = { 1,2,"ggggg",12};
print(table.concat( table2, ", ", 2, 3 ));
上一篇下一篇

猜你喜欢

热点阅读