Sti*_*lev 5 string escaping clojure read-eval-print-loop
我正在玩REPL中的文本解析,有时想把一堆数据转换成字符串,无论是bibtex条目还是某些EBNF符号等.通常字符串中可能有引号,而且非常乏味且容易出错,必须手动逃脱它们..
有没有其他方法可以做到这一点,比如Ruby %Q|I
可以使用"Quotation Marks"|
或者heredocs
等等?或者是否可以编写宏或修改阅读器以启用此功能?
关于更强大的引用语法已经有一些讨论,但似乎不会立即进行任何更改来支持这一点。
同时,为了专门处理您提到的 REPL 交互,您可能会发现这很有用。请注意,它可能并不适用于每个 REPL——它们并不都支持得read-line
很好:
(defn 读取行 [] (->>(反复阅读行) (take-while#(not=%“.”)) (mapcat#(列表%“\n”)) (应用str)))
通过在 REPL 中运行、粘贴您的内容,然后单独(read-lines)
添加一行来使用它:.
user=>(读取行) #_=> 这个“有效” #_=> 有时... #_=> 。 “这\”有效\”\n有时...\n” 用户=>(打印*1) 这个“有效” 有时... 零