Возьмем простую строку:
let str = "\"abc\", \"def\",\"ghi\" , 123.4, 567, \"qwe,rty\""
и разделим ее по запятой:
let parsedCSV = str
.components(separatedBy: .newlines)
.filter { !$0.isEmpty }
.map { $0.components(separatedBy: ",") }
.map { $0.map { $0.trimmingCharacters(in: .whitespaces) } }
print(parsedCSV)
И получим:
[["\"abc\"", "\"def\"", "\"ghi\"", "123.4", "567", "\"qwe", "rty\""]]
Есть ли какой-то простой способ (используя функциональное прогр-ие) не разделять по запятой последнюю строку в массиве \"qwe,rty\"
, потому что мы понимаем, что это одно целое?