Is there any Lua library that converts a string to bytes using UTF8 encoding?
I wonder whether this kind of libra开发者_如何学编程ry exists.
slnunicode is part of the collection of general purpose lua support libraries developed for the Selene database project.
It's also available as a luarock
Lua strings are a sequence of bytes. When you store UTF8 text in them, you're already storing "UTF8 bytes". You can get the bytes like with all other strings, using string.byte(s,i,j)
:
local bytes = { string.byte(unicodeString, 1,-1) }
Now bytes is a table containing your "UTF8 bytes".
More information about string.byte
and UTF8 in Lua is available at:
Standard Lua string library
Lua 5.3 standard utf8 library
Presentation by Roberto Ierusalimschy (one of the creators of Lua) on the future of Lua, which talks about many things and one of them is UTF8 support. It was released before UTF8 support was built into Lua.
Lua 5.3 has UTF-8 support in the standard library now.
For example, to get a UTF-8 string's code points:
for p, c in utf8.codes("瑞&于") do
print(c)
end
Output:
29790
38
20110
精彩评论