Если вам не нужно переупорядочивать элементы или изменять их значения, и вы уверены, что сами значения не содержат знаков равенства или вертикальных полос, используемых в качестве разметки во входных данных, вы можете применить ряд регулярных выражений, чтобы представить HTML. Используя Java-класс String из Scala, это может быть плотная, но эффективная однострочная строка:
"Escape test=&<>|Width=3/8 in|Length=1 in|Thread - TPI or Pitch=|Bolt/Screw Length=|Material=|Coating=|Type=Snap-On|Used With=|Quantity=5000 per pack|Wt.=20 lb|Color=".
replaceAll("&","&").
replaceAll("<","<").
replaceAll(">",">").
replaceAll("^","<dl>\n\t<dt>").
replaceAll("=","</dt>\n\t<dd>").
replaceAll("\\|","</dd>\n\n\t<dt>").
replaceAll("$","</dd>\n</dl>")
, что дает
<dl>
<dt>Escape test</dt>
<dd>&<></dd>
<dt>Width</dt>
<dd>3/8 in</dd>
<dt>Length</dt>
<dd>1 in</dd>
<dt>Thread - TPI or Pitch</dt>
<dd></dd>
<dt>Bolt/Screw Length</dt>
<dd></dd>
<dt>Material</dt>
<dd></dd>
<dt>Coating</dt>
<dd></dd>
<dt>Type</dt>
<dd>Snap-On</dd>
<dt>Used With</dt>
<dd></dd>
<dt>Quantity</dt>
<dd>5000 per pack</dd>
<dt>Wt.</dt>
<dd>20 lb</dd>
<dt>Color</dt>
<dd></dd>