【发布时间】:2020-07-06 02:08:05
【问题描述】:
这是示例测试代码。
s="\\command{sample execution}"
u=string.gsub(s,"\\(%b{})",print)
它工作正常,因为 print 是全局函数。我将函数 myprint 定义如下。
myprint = function(x,y)
return print(x,y)
end
现在u=string.gsub(s,"\\(%b{})",myprint) 命令不起作用。这是因为 myprint 不像 print 那样是全局变量。所以我想问的基本问题是“如何在 Lua 中将函数分配给全局变量?”
【问题讨论】:
-
示例不起作用。模式
"\\(%b{})"与s中的任何内容都不匹配。"\\%a+(%b{})"匹配。之后,使用提供的代码一切都很好。
标签: function variables lua global-variables