需要一个lua脚本将文本转换成utf8编码字符串

我想要创建一个lua脚本,将文本转换成utf8编码的字符串。 问题是我使用的是lua版本5.2,不支持具有库来这样做的LUAJit。 因此,我需要一个函数来帮我完成这个任务。 例如,我将传递“嘿,这是sam这边”,它应该给我utf8编码的字符串,如“\x68\x65\x79\x20\x74\x68\x69\x73\x20\x69\x73\x20\x73\x61\x6d\x20\x74\x68\x69\x73\x20\x73\x69\x64\x65”

要求只使用lua。

原文链接 https://stackoverflow.com/questions/70000389

点赞
stackoverflow用户10070007
stackoverflow用户10070007

你可以像这样做:

local str = "hey this is sam this side"
local answer = string.gsub(str,"(.)",function (x) return string.format("\\x%02X",string.byte(x)) end)
print(answer)

答案是:

"\x68\x65\x79\x20\x74\x68\x69\x73\x20\x69\x73\x20\x73\x61\x6D\x20\x74\x68\x69\x73\x20\x73\x69\x64\x65"
2021-11-17 08:37:37