Lua中的字符串拆分

我对Lua非常陌生,所以如果我听起来很蠢,请不要介意。 我正在尝试编写一个程序,做一些类似于下面的事情:

用户输入:“你好 世界” 变量1:你好 变量2:世界

因为我不知道自己在做什么,所以我只有test = io.read(),并且不知道下一步该怎么做。

我感谢任何帮助!

谢谢,摩根。

点赞
用户88888888
用户88888888

如果您想要分隔单词,可以这样做:

input = "Hello world"

-- 声明用于存储结果的表
-- 如果你不知道会有多少个结果,使用表而不是单个变量
t_result = {}

-- 扫描输入
for k in input:gmatch('(%w+)') do table.insert(t_result, k) end
-- input:gmatch('(%w+)')
-- 使用通用的匹配函数扫描输入字符串,根据给定的模式查找匹配项
-- 这与 string.gmatch(input, '(%w+)') 相同
-- 查找模式的含义:
---- "%w" = 单词字符
---- "+"  = 一次或多次
---- "()" = 捕获匹配项并将其返回给变量 "k"

-- table.insert(t_result, k)
-- 捕获的每个匹配结果都将存储在结果表中

-- 输出
for i=1, #t_result do print(t_result[i]) end
-- #t_result: 使用 "#" 可以获取表的长度(它不适用于每种类型的表)
-- 其他方式:
-- for k in pairs(t_result) do print(t_result[k]) end

输出:

Hello
world
2017-12-18 16:45:38