使用transform-from-json时如何转换换行符

时间:2014-08-19 15:29:01

标签: marklogic

在休息时,我收到了json。 Transform-from-json转换包含'/ n'

的文本
let $jcodes     := '{code:"6626\n1012\n2536\n7890"}'
let $xml        := json:transform-from-json($jcodes)
return $xml

在查询控制台中提供:

<json type="object" xmlns="http://marklogic.com/xdmp/json/basic">
  <code type="string">6626
1012
2536
7890</code>
</json>

问题:在queryconsole的de resultbox中用什么字符来表示换行符?

1 个答案:

答案 0 :(得分:0)

您想要的功能是fn:string-to-codepoints - 而xdmp:describe也很有用。

string-to-codepoints(
  json:transform-from-json(
    '{code:"6626\n1012\n2536\n7890"}'))

=> (54, 54, 50, 54, 10, 49, 48, 49, 50, 10, 50, 53, 51, 54, 10, 55, 56, 57, 48)

因此换行符是codepoint 10,它匹配man ascii告诉你的内容。

 The decimal set:

   0 nul    1 soh    2 stx    3 etx    4 eot    5 enq    6 ack    7 bel
   8 bs     9 ht    10 nl    11 vt    12 np    13 cr    14 so    15 si
  16 dle   17 dc1   18 dc2   19 dc3   20 dc4   21 nak   22 syn   23 etb