在我的SQlite3数据库中,我有以下VARCHAR数据:
data = 'Kim okurdu kim yazardı \n Bu düğümü kim çözerdi \n Koyun kurt ile gezerdi \n Fikir başka başk\'olmasa'
我尝试用以下方式显示此文本:
local myText = display.newEmbossedText(data, globals.W/2,globals.H/2,300,300, native.systemFont, 16, { 1, 1, 1 } )
但是,未检测到转义字符。我该如何解决这个问题?
答案 0 :(得分:1)
我通过以下方式解决了我的问题,感谢来自Corona社区的Lerg:
data:gsub([[\n]], '\n')
答案 1 :(得分:1)
使用双反斜杠逃避反斜杠更清晰。
例如:data:gsub ( "\\n", "\n" )
否则,您可以使用load/loadstring
来解析任何表达式。
例如:
myString = io.read()--read in some a string with any kind of escapes, assuming a line buffered input
myString = loadstring ( "return "..myString )()--load as function and call it
print ( myString )
但是,第二种方法可能非常不安全,因此请谨慎使用。