Julia中的原始文字字符串

时间:2014-02-19 13:45:42

标签: string escaping string-literals julia

在Python中,可以编写r"a\nb"以防止\n被解释为换行符的转义序列。

朱莉娅有类似的东西吗?那么像"$variable"那样的字符串插值有什么办法可以阻止呢?

我知道可以简单地在Julia中编写"a\\nb""\$variable",但是我想编写很多LaTeX字符串,而不必考虑正确地避免每个反斜杠\和美元$个字符......

(在Julia中,r"..."创建了一个正则表达式。)

2 个答案:

答案 0 :(得分:11)

好吧,我刚刚发现,因为人们可以轻松地在朱莉娅创建non-standard string literals,传递者会做我要求的事情:

macro R_str(s)
    s
end

>>> R"$a\n$b"
"\$a\\n\$b"
>>> print(R"$a\n$b")
$a\n$b

我还发现PyPlot.jl定义了一个«LaTeXString类型,它可以通过L"...."构造而不会转义反斜杠或美元符号»,还有IJulia中渲染方程式的额外好处。< / p>

最后一个问题仍然存在:在Julia base中拥有原始字符串文字是不值得的?

答案 1 :(得分:5)

来自Julia 0.6我们raw"\a$variable"