Преобразование Map<String, List<String>> в Yaml с помощью YamlBuilder

я хочу преобразовать json

{"тест": "1,2,3,4"}

в yaml вида:

      ---
test:
  - 1
  - 2
  - 3
  - 4

для этого я попытался использовать следующий отличный фрагмент:

      def json = new groovy.json.JsonSlurper().parseText('{"test": "1,2,3,4"}')
println json
def ymlMap = json.collectEntries { k, v -> [k , v.split(', ')] }
def yml = new groovy.yaml.YamlBuilder()
yml ymlMap
println yml.toString()

но он печатает

      ---
test:
- "1,2,3,4"

Любые подсказки, как правильно использовать yamlbuilder?

1 ответ

ха-ха, ваше разделенное регулярное выражение содержит слишком много пробела:

      json.collectEntries { k, v -> [k , v.split(',')] }

Затем он печатает:

      ---
test:
- "1"
- "2"
- "3"
- "4"

При наличии этого пробела значение не разбивается и выводится как есть.

Другие вопросы по тегам