用lua中的真实\ n替换\ n字符串

时间:2019-07-18 16:48:09

标签: lua

在lua中,如果给定包含\ n或\ t的字符串,是否有办法使我们能够将\ n(真正的新行)或\ t(tab)的真实含义获取为将通过的字符串上。必须在打印之前完成此操作,因为这样才能解决问题!但是我不想打印更新的字符串!

我使用了gsub,但不知道如何表示实际的新行。 (选项卡可以用一定数量的空格表示)

1 个答案:

答案 0 :(得分:1)

请参阅Lua 5.3 Lua Reference Manual 6.4 String Manipulation string.gsub

  

string.gsub (s, pattern, repl [, n])

     

返回其中所有(或第一个s,如果有)的n的副本   模式的出现(请参见第6.4.1节)已被替换为   由repl指定的替换字符串,可以是字符串,表,   或功能。 gsub还会将总计作为第二个值返回   发生的匹配数。名称gsub来自全球   替换。

     

如果repl是一个表,则使用以下命令查询每个匹配项的表   第一次捕获为关键。

local myString = "hello\\n\\tworld"
print(myString)
  

hello\n\tworld

print((myString:gsub("\\([nt])", {n="\n", t="\t"})))
hello
  world!!!