在分隔符上拆分字符串

rip*_*pat 5 lua

我有一个字符串first part;second part.我想将它拆分;并返回第二部分.一切正常:

start = mystring:find(';')
result = mystring:sub(start)
Run Code Online (Sandbox Code Playgroud)

但我希望能在一条线上做到这一点:

result = mystring:sub(mystring:find(';'))
Run Code Online (Sandbox Code Playgroud)

它不会抛出错误,但它不会返回预期的结果.这不是一个大问题,因为它在两行代码上工作正常,但理解为什么它不在oneliner上工作将帮助我更好地理解lua如何工作.

fin*_*nnw 1

这也将起作用:

result = mystring:sub((mystring:find(';')))
Run Code Online (Sandbox Code Playgroud)

额外的括号确保仅使用一个参数调用,因此它将使用第二个参数的sub默认值( 的结尾)。mystring