lua - 在lua中用真正的\n替换\n字符串
问题描述
当一个包含 \n 或 \t 的字符串给出时,lua 中有没有一种方法,我们能够将 \n(real new line) 或 \t(tab) 的真正含义传递给一个可以传递的字符串。这必须在打印之前完成,因为它可以解决问题!但我不想打印更新的字符串!
我使用 gsub 但不知道如何表示实际的新行。(一个制表符可以用一些空格来表示)
解决方案
参考Lua 5.3 Lua 参考手册 6.4 字符串操作 string.gsub:
string.gsub (s, pattern, repl [, n])
返回一个副本,
s
其中模式的所有(或第一个n
,如果给定)出现(参见 §6.4.1)已被 指定的替换字符串替换,该替换字符串repl
可以是字符串、表或函数。gsub
还返回发生的匹配总数作为其第二个值。该名称gsub
来自 Global SUBstitution。如果
repl
是一个表,则使用第一个捕获作为键来查询每个匹配项的表。
local myString = "hello\\n\\tworld"
print(myString)
hello\n\tworld
print((myString:gsub("\\([nt])", {n="\n", t="\t"})))
hello world!!!
推荐阅读
- spring - 致命:数据库“dbName/”不存在
- php - 用php更改最后更新行的html颜色
- html - 正确格式化多个元素 HTML/CSS
- java - 调用 Marketo API 时出现 Java 未知主机异常
- qr-code - 如何在现有图像上嵌入二维码?
- react-native - 在 ReactNative 中从 InnerObject 获取数据
- android - 对本机队列和任务做出反应以进行后台和离线处理
- angularjs - 如何在 Angular JS 的 ng-repeat 中创建小计
- angularjs - 在AngularJS中单击一次后如何永久隐藏按钮
- r - 如何在简单的特征集合中将点突变为线