Lua 如何只保留字符串的前两位?

Lua 如何只保留字符串的前两位?,lua,lua-patterns,Lua,Lua Patterns,我一直在尝试这个,但它不起作用: function twonumbers(num) num = tostring(num):gsub("%d%d(.*)","") return num end 基本上,它是用来使用os.clock()制作秒计数器的 还尝试制作一个仅在点后保留两位数字的: function twodigits(num) num = tostring(num):gsub("%.%d%d(.-)","") return num end 我觉得我使用

我一直在尝试这个,但它不起作用:

function twonumbers(num)
    num = tostring(num):gsub("%d%d(.*)","")
    return num
end
基本上,它是用来使用os.clock()制作秒计数器的

还尝试制作一个仅在点后保留两位数字的:

function twodigits(num)
    num = tostring(num):gsub("%.%d%d(.-)","")
    return num
end

我觉得我使用gsub是错误的。

直接回答您的问题:只需使用
string.match

function first_two_digits(str)
    return str:match("^%d%d")
end
但是,您根本不需要这样做,只需使用数学运算:

math.floor(os.clock())

我认为你不需要这里的图案。您可以对os.clock()提供的数字使用
math.floor()
。例子: