从io.read()执行用户输入

时间:2017-03-22 19:43:39

标签: lua

所以我有一个Lua代码,我在文件中有一堆不同的函数(因为多个脚本使用它们),我希望能够根据用户输入执行其中一些函数。因此,如果用户输入addUser()(我的一个函数),那么代码将运行addUser()。现在,我知道你可以像

那样做
    var = io.read()
    if var == (some function) then
        (function)
    else
        if var == (some other function) then

但我想要一种更简单的方法。

1 个答案:

答案 0 :(得分:1)

让用户只输入函数的名称,然后执行

var = io.read()
if _G[var]~=nil then _G[var]() end

如果您想允许foo(),请使用

var = var:gsub("[%s()]","")

阅读后。