From 8445cda29195a4fb81635a240f297b3c48728dfa Mon Sep 17 00:00:00 2001 From: Oskar Skog Date: Mon, 26 Aug 2019 14:45:29 +0300 Subject: [PATCH] Preserve empty columns if separator isn't whitespace #394 --- src/commands/split_column.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/commands/split_column.rs b/src/commands/split_column.rs index fbccc89c6d..b8f7be311e 100644 --- a/src/commands/split_column.rs +++ b/src/commands/split_column.rs @@ -43,7 +43,12 @@ fn split_column( let splitter = separator.replace("\\n", "\n"); trace!("splitting with {:?}", splitter); - let split_result: Vec<_> = s.split(&splitter).filter(|s| s.trim() != "").collect(); + let split_result: Vec<_> = if splitter.chars().all(|c| c.is_whitespace()) { + s.split(&splitter).filter(|s| *s != "").collect() + } else { + s.split(&splitter).collect() + }; + trace!("split result = {:?}", split_result); let positional: Vec<_> = rest.iter().map(|f| f.item.clone()).collect();