无法在Lua中返回子字符串

时间:2014-03-21 16:22:23

标签: lua

此findword函数正在从另一个函数调用。在下面的函数中,s包含一个长字符串。 但问题是我一使用':'对于s:byte和s:sub,它表示s是没有子节点的叶子节点。我做错了什么

2.在lua中是否有任何名为_isWhite的函数?如果没有,我应该用什么代替?

local function findword(s,i)
local j=i+1
while not _iswhite(s:byte(j)) and j<#s do
j=j+1
end
return s:sub(i,j),j
end

1 个答案:

答案 0 :(得分:2)

要处理字符串中的所有单词,请尝试:

for w in s:gmatch("(%S+)") do print(w) end

根据您发布的代码,单词只是一系列非空白字符。

如果你想要每个单词结束的位置,试试这个:

for w,k in s:gmatch("(%S+)()") do print(w,k-1) end