【问题标题】:how to append \ and "" to string literally in Lua如何在Lua中将\和“”附加到字符串中
【发布时间】:2011-07-12 23:49:02
【问题描述】:

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

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


function(arg)
etc....

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

【问题讨论】:

    标签: lua append


    【解决方案1】:

    怎么样

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

    这也会删除任何已经存在的尾随反斜杠。对于拼凑路径名,您还可以查看 table.concat,并将不同的部分放在一个表中。

    【讨论】:

    • cheers concat 实际上对我来说效果更好,让事情变得不那么复杂。谢谢大家
    【解决方案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\"
    

    【讨论】:

      【解决方案3】:

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

      arg = ' something \\ '
      yourfunc(arg)
      

      【讨论】:

      • 你还是要逃离\
      猜你喜欢
      • 1970-01-01
      • 2021-10-25
      • 2019-02-13
      • 2014-11-19
      • 1970-01-01
      • 2012-01-12
      • 2019-02-03
      • 2012-04-14
      • 1970-01-01
      相关资源
      最近更新 更多