Кто-нибудь знает о хорошей библиотеке scala для удаления/сжатия пробелов из XML?Scala: удаление пробелов XML?
<foo> <bar>hello world</bar> <baz> xxx </baz> </foo>
к:
<foo><bar>hello world</bar><baz>xxx</baz></foo>
Кто-нибудь знает о хорошей библиотеке scala для удаления/сжатия пробелов из XML?Scala: удаление пробелов XML?
<foo> <bar>hello world</bar> <baz> xxx </baz> </foo>
к:
<foo><bar>hello world</bar><baz>xxx</baz></foo>
scala.xml .Utility.trim() должен делать то, что вы хотите:
scala> val x = <foo>
| <bar>hello world</bar>
| <baz> xxx </baz>
| </foo>
x: scala.xml.Elem =
<foo>
<bar>hello world</bar>
<baz> xxx </baz>
</foo>
scala> scala.xml.Utility.trim(x)
res0: scala.xml.Node = <foo><bar>hello world</bar><baz>xxx</baz></foo>
По какой-то стоит, это то, что я получил сейчас происходит в "свернуть свою собственную" стратегию:
def compactXml(xml: Node): Node = { (xml map { case Elem(prefix, label, attributes, scope, children @ _*) => { Elem(prefix, label, attributes, scope, children.map(compactXml(_)) :_*) } case Text(data) => Text(data.trim) case x => x }).first }
Это похоже на хорошее решение. Зачем вам нужна библиотека, чтобы делать то, что вы делаете в 7 строках? –
Главным образом потому, что я еще не убедил себя, что мой код на 100% прав. – harryh
Поскольку библиотека является 1 строкой, она находится в стандартной библиотеке. –
Извините ... удалил свой ответ. Теперь я вижу, что это было совершенно неправильно. Я не должен действительно программировать, читая о квантовых операторах. –