我们如何在 Julia 中将一组 Unicode 值转换回它的文本形式?

问题描述

我正在为我的下一个项目学习 Julia,因为数据确实是大量文本,我们正在研究如何提高代码的运行效率和速度。所以作为实验,我正在学习 Julia。

现在我了解到在 Julia 中有一种非常好的输入 Unicode 字符的方法。例如:

docker ps 可以使用 "⎔"

有没有办法找回这些 Unicode 字符的文本版本?

所以我想问的是:

对于每一个

"\hexagon"+tab

我能回来吗:

("⬙","☽","⎔","⬟","◁")

由于我们不能像 ("diamondbotblack","rightmoon","hexagon","pentagonblack","triangleleft") 一样将它们与 \ 一起保存,因为将其标记为:\pentagon,如果我能在没有 {{ 1}}。

有人知道怎么做吗?我已经用谷歌搜索过这个并在 Stackoverflow 上搜索过,也在其中一个论坛上发布过,但还没有找到任何解决方案。

解决方法

你可以使用这个:

using REPL
tmp_d = REPL.REPLCompletions.latex_symbols
mapping = Dict(values(tmp_d) .=> keys(tmp_d))

现在你可以这样做:

julia> map(v -> mapping[v],("⬙","☽","⎔","⬟","◁"))
("\\diamondbotblack","\\rightmoon","\\hexagon","\\pentagonblack","\\triangleleft")

我保留了前导 "\\",但您可以根据需要将其删除。

,

另一个好主意是使用专用于此的包:

julia> using Unidecode

julia> decode_latex.(["⬙","◁"])
5-element Array{String,1}:
 "diamondbotblack"
 "rightmoon"
 "hexagon"
 "pentagonblack"
 "triangleleft"

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...