0

我想使用 LUA 5.1 的拆分功能来拆分不带空格的表情符号字符串并在它们之间添加空格,但我不能正确地做到这一点。所以我这样做是这样的,但它是错误的:

#!/usr/bin/env lua

local text = "‍‍‍‍‍⌚↔"
for emoji in string.gmatch(text, "[%z\1-\127\194-\244][\128-\191]*") do
    io.write(emoji .. " ")          
end

在浏览器 Firefox 65 中查看!

我的错误结果:⌚ ↔

等待结果:‍‍‍ ‍‍ ⌚ ↔</p>

4

1 回答 1

1
local text = "‍‍‍‍‍⌚↔"
for emoji in text
   :gsub("(.)([\194-\244])", "%1\0%2")
   :gsub("%z(\240\159\143[\187-\191])", "%1")
   :gsub("%z(\239\184[\128-\143])", "%1")
   :gsub("%z(\226\128\141)%z", "%1")
   :gmatch"%Z+" 
do
   print(emoji)
end
于 2019-03-20T14:22:20.233 回答