Lua 为空格迭代字符串

Lua iterating string for whitespace

whiteSpace = 0
foo = "foo bar"

for i = 1, #foo do
    if (string.sub(foo, i, i) == "%") then
        whiteSpace = whiteSpace + 1
    end
end

print(whiteSpace)

我试图在每个字符中遍历这个字符串,检查它是否是空格。如果字符是空格,我想增加 whiteSpace 变量并在最后输出它。但是由于某种原因,当我执行它时,它总是 returns 0,即使 foo 字符串中明显有空格。

我用过 "%""%s""" 都没有用。现在很无知。

whiteSpace = 0
foo = "foo bar"

for i = 1, #foo do
    if (string.sub(foo, i, i) == " ") then
        whiteSpace = whiteSpace + 1
    end
end

print(whiteSpace)

有模式匹配

a, whiteSpace = string.gsub("foo bar","%s","")
print(whiteSpace)
whiteSpace = 0
foo = "foo bar"
foo = string.gsub(foo, "%s", " ")

for i = 1, #foo do
    if (string.sub(foo, i, i) == " ") then
        whiteSpace = whiteSpace + 1
    end
end

print(whiteSpace)