Каков наилучший способ отформатировать строку XML в ruby? - PullRequest
6 голосов
/ 18 марта 2010

с учетом XML-строки, подобной этой:

<some><nested><xml>value</xml></nested></some>

Каков наилучший вариант (с использованием ruby), чтобы отформатировать его во что-то вроде:

<some>
  <nested>
    <xml>value</xml>
  </nested>
</some>

Ответы [ 2 ]

9 голосов
/ 18 марта 2010
require "rexml/document"
include REXML

source ='<some><nested><xml>value</xml></nested></some>'
doc = Document.new( source )
doc.write( targetstr = "", 2 ) #indents with 2 spaces
puts targetstr

#write записывает все, что принимает << (string), поэтому это также верно: </p>

doc.write( $stdout, 2 )
doc.write( an_open_file, 2 )
4 голосов
/ 18 марта 2010

только что заметил, что builder имеет опцию indent для этого. но, пожалуйста, оставьте свои ответы. Не каждый, кто хочет сделать это, использует строитель. также могут быть более быстрые решения для строк XML, которые вы не создали сами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...