Я знаю, у меня уже есть функция Haskell Data.ByteString.Lazy разделить на CSV на один символ, например:Split байтовой строки на байт (вместо Word8 или Char)
split :: Word8 -> ByteString -> [ByteString]
Но я хотите разделить на несколько символов байтовой строки в (например, расщеплением на строку вместо Char):
split :: ByteString -> ByteString -> [ByteString]
у меня есть несколько символов разделителей в виде CSV-как текстовый файл, который мне нужно разобрать и индивидуальные сами символы появляются в некоторых полях, поэтому выбирая только один разделительный символ и отбрасывая rs будет загрязнять импорт данных.
У меня были некоторые идеи о том, как это сделать, но они кажутся взломанными (например, берут три Word8s, проверяют, являются ли они комбинацией разделителей, запускают новое поле, если они есть, рекурсируют дальше) и Думаю, я все равно изобрел колесо. Есть ли способ сделать это без восстановления функции с нуля?
Хорошая функция там, прочитайте мой разум. Похоже, у нас есть консенсус 3 для breakSubstring, хотя мне все равно потребуется «toChunks» и «fromChunk» my ByteStrings для Stict ByteStrings и обратно, чтобы использовать это. Любая причина breakSubstring не в ByteString.Lazy? –