Lua 将字符串拆分为两个变量?卢阿

Lua 将字符串拆分为两个变量?卢阿,lua,scripting,Lua,Scripting,因此,在LUA驱动程序中,我正在编写我不断接收RS232字符串,例如; ZAA1,ZO64,D1等等。我在寻找一个解决方案,找到字符串结束的地方,Int开始的地方,然后把它放入两个不同的变量中? 我目前正在使用一个while循环,其中包含string.match方法。有更好的办法吗?以下为当前缩短代码 s = "ZO29" j = 1 while j <= 64 do if (s == string.format("ZO%d", j)) th

因此,在LUA驱动程序中,我正在编写我不断接收RS232字符串,例如; ZAA1,ZO64,D1等等。我在寻找一个解决方案,找到字符串结束的地方,Int开始的地方,然后把它放入两个不同的变量中? 我目前正在使用一个while循环,其中包含string.match方法。有更好的办法吗?以下为当前缩短代码

s = "ZO29"
j = 1
while j <= 64 do
    if (s == string.format("ZO%d", j)) then
        print("Within ZO message")
        inputBuffer = ""
        sendACK()
        break
        
    elseif (s == string.format("ZC%d", j)) then
        inputBuffer = ""
        sendACK() 
        break
    end
    j = j + 1
end
s=“ZO29”
j=1
而j试试这个:

a,b=s:match("(.-)(%d+)$")
这会将字符串末尾的数字捕获到
b
中,并将前面的文本捕获到
a

中。请尝试以下操作:

a,b=s:match("(.-)(%d+)$")
这会将字符串末尾的数字捕获到
b
中,并将前面的文本捕获到
a