如何在Lua中逐字地追加\和“”字符串

时间:2011-07-12 14:34:21

标签: lua append

我正在尝试连接2个字符串,并为它们添加一些字符。例如

local currdir
local node
local arg = (currdir..node)


function(arg)
etc....

但是“arg”需要在其末尾加上“\”,并被双引号括起来。所以字面上传递给像“arg”这样的函数。有谁知道如何做到这一点?欢呼声

3 个答案:

答案 0 :(得分:3)

怎么样

arg = ([["%s\"]]):format(arg:gsub('\\+$',''))

这也会删除任何已存在的尾部反斜杠。对于拼图路径名,你也可以看一下table.concat,并在表格中有不同的部分。

答案 1 :(得分:2)

我认为arg='"'..curdir..node..'\\"'应该很好用,例如:

> curdir='c:\\path\\to\\files\\'
> print (curdir)
c:\path\to\files\
> node='xyz'
> print (node)
xyz
> arg='"'..curdir..node..'\\"'
> print (arg)
"c:\path\to\files\xyz\"

答案 2 :(得分:0)

最简单的方法是使用单引号字符串,因为这样你就不必转义双引号。

arg = ' something \\ '
yourfunc(arg)