2015-04-13 2 views
1

Я хотел бы разделить строку по строкам, сохраняя все пустые строки, включая конечные. Основные функции, которые я нашел, кажется, обрезать эти:Clojure разделили строки со всеми пустыми строками

user=> (require 'clojure.string) 
nil 
user=> (clojure.string/split-lines "a\n\nb\n") 
["a" "" "b"] 
user=> (clojure.string/split "a\n\nb\n" #"\n") 
["a" "" "b"] 

Я хотел бы последнюю пустую строку() сохраняются, как в этом примере питона:

>>> 'a\n\nb\n'.split('\n') 
['a', '', 'b', ''] 

Что такое правильный способ получить что в clojure?

ответ

6

Попробуйте это:

user=> (clojure.string/split "a\n\nb\n" #"\n" -1) 

https://clojuredocs.org/clojure.string/split

+0

Wow это работает, спасибо. Должны ли мы видеть это как раз из документа? Я (сейчас) см. -1, упомянутый в одном из примеров, но имею проблемы с его отношением к «числу расщеплений». – Gnurfos

Смежные вопросы