Ich habe eine Liste von Strings und muss sie zusammen mit & lt; br / & gt; Tags dazwischen. Also ab:
%Vor%Ich muss mit einem NodeSeq von:
enden %Vor%Es ist möglich, dass die Liste nur ein Element enthält. In diesem Fall sollte ich mit einem NodeSeq nur von Text ("line1") enden.
Gibt es einen Einzeiler, um dies zu tun, indem Sie eine der Funktionen höherer Ordnung in der Liste verwenden? Ich habe versucht, mit FoldLeft herumzuspielen, aber ich kann es nicht so machen, wie ich es will.
Wenn es Ihnen nichts ausmacht, Scalaz zu verwenden, gibt es intersperse
:
Stimmen Sie dem zu, was Debilski beantwortet hat. Eine andere Möglichkeit, dasselbe zu erreichen, ist
import scala.xml._
XML.loadString("<root>" + list.mkString("<br/>") + "</root>").child:NodeSeq
Aber die Verwendung von map / reduce ist ein viel sauberer Ansatz.