之前我已经完成了,但我不确定自从丢失了源文件之后我是怎么做的。
如何获取Lua中角色的代码点?或者,至少是角色的唯一值?
答案 0 :(得分:2)
对于ASCII字符串,很容易:
local char_code = string.byte("A",1);
-- char_code now contains 65
对于UTF-8(假设你是如何表示数据),它变得棘手。使用像slnunicode这样的第三方库,或者你必须编写自己的函数来传递UTF-8字节。
您的Lua安装可能已包含ValidateUnicodeString扩展程序,这可以使其正常工作:
local char_code = string.utf8code("ٱ");
-- char_code now contains 1649
(该示例包含阿拉伯语Alef Wasla,可能无法以您的本地字体正确显示)
答案 1 :(得分:2)
在Lua 5.3中,您可以使用utf8.codepoint获取UTF-8字符串的代码点。
print(utf8.codepoint("瑞"))
--29790
答案 2 :(得分:1)
有几个答案可能会给你你想要的东西(如果你自己限制为UTF8):